<SEC-DOCUMENT>0001140361-25-018382.txt : 20250512
<SEC-HEADER>0001140361-25-018382.hdr.sgml : 20250512
<ACCEPTANCE-DATETIME>20250512161531
ACCESSION NUMBER:		0001140361-25-018382
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		54
CONFORMED PERIOD OF REPORT:	20250331
FILED AS OF DATE:		20250512
DATE AS OF CHANGE:		20250512

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TANDY LEATHER FACTORY INC
		CENTRAL INDEX KEY:			0000909724
		STANDARD INDUSTRIAL CLASSIFICATION:	LEATHER & LEATHER PRODUCTS [3100]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				752543540
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		1900 SE LOOP 820
		CITY:			FT WORTH
		STATE:			TX
		ZIP:			76140
		BUSINESS PHONE:		8178723200

	MAIL ADDRESS:	
		STREET 1:		1900 SE LOOP 820
		CITY:			FT WORTH
		STATE:			TX
		ZIP:			76140

	FORMER COMPANY:	
		FORMER CONFORMED NAME:	LEATHER FACTORY INC
		DATE OF NAME CHANGE:	19930723
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>ef20047588_10q.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:srt="http://fasb.org/srt/2024" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:country="http://xbrl.sec.gov/country/2024" xmlns:currency="http://xbrl.sec.gov/currency/2024" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:naics="http://xbrl.sec.gov/naics/2024" xmlns:sic="http://xbrl.sec.gov/sic/2024" xmlns:stpr="http://xbrl.sec.gov/stpr/2024" xmlns:exch="http://xbrl.sec.gov/exch/2024" xmlns:cef="http://xbrl.sec.gov/cef/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:cyd="http://xbrl.sec.gov/cyd/2024" xmlns:tlfa="http://tandyleather.com/20250331" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title></title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 25.3.2.5298
         Copyright 1995 - 2025 Broadridge -->
    <meta http-equiv="Content-Type" content="text/html"/>
</head>

<body style="background-color: #ffffff; color: #000000;">
<div id="DSPFiXBRLHidden" style="display: none;"><ix:header><ix:hidden><ix:nonNumeric name="dei:AmendmentFlag" id="Fact_f5da0c2b699949519a853b85f54b4a29" contextRef="c20250101to20250331" format="ixt:fixed-false">false</ix:nonNumeric><ix:nonNumeric name="dei:CurrentFiscalYearEndDate" id="Fact_18a81d306bf2432892d2bfc957b71765" contextRef="c20250101to20250331" format="ixt:date-month-day">12-31</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalYearFocus" id="Fact_accb2f29dcec4cbaa12c25ecaaeb1774" contextRef="c20250101to20250331">2025</ix:nonNumeric><ix:nonNumeric name="dei:DocumentFiscalPeriodFocus" id="Fact_7230fa3b286f4a2298b74f9b6fdc96aa" contextRef="c20250101to20250331">Q1</ix:nonNumeric><ix:nonNumeric name="dei:EntityCentralIndexKey" id="Fact_a1c671e0fde54ea7a8ae77f330ee8e38" contextRef="c20250101to20250331">0000909724</ix:nonNumeric><ix:nonFraction name="us-gaap:NumberOfOperatingSegments" id="Fact_52110c9064524c4faf89b8b6c0e18590" contextRef="c20250101to20250331" unitRef="U005" decimals="INF">1</ix:nonFraction><ix:nonFraction name="us-gaap:NumberOfReportableSegments" id="Fact_31227776067142d8be0cbb10617f0d5d" contextRef="c20250101to20250331" unitRef="U005" decimals="INF">1</ix:nonFraction><ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_fbfeb37caee54873be8b0a4087eaa022" contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember">P7Y</ix:nonNumeric><ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_18e8e79a5c4f4291950fe11f11bc251a" contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember">P3Y</ix:nonNumeric><ix:nonFraction name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" id="Fact_dec83329e0ed457cae86bd2da01523fc" contextRef="c20230103to20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember" unitRef="U006" decimals="INF">0.0210</ix:nonFraction><ix:nonNumeric name="us-gaap:DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" id="Fact_b5db66dcfea64781bc8c2674442dccb3" contextRef="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember">http://tandyleather.com/20250331#TermSecuredOvernightFinancingRateSOFRRateMember</ix:nonNumeric><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" id="Fact_eac3d0e62ab048b9bd84957bc7063da0" contextRef="c20250331" unitRef="U002" xsi:nil="true"></ix:nonFraction><ix:nonFraction name="us-gaap:CommitmentsAndContingencies" id="Fact_95a854b3e30f455aaddbc57633032b4a" contextRef="c20241231" unitRef="U002" xsi:nil="true"></ix:nonFraction></ix:hidden><ix:references><link:schemaRef xlink:href="tlfa-20250331.xsd" xlink:type="simple"/></ix:references><ix:resources><xbrli:context id="c20250101to20250331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20231231"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240331"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231231_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20231231_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20231231_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20241231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20250331_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240331_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_StatementEquityComponentsAxis_RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240331_StatementEquityComponentsAxis_CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20250331_StatementGeographicalAxis_CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_StatementGeographicalAxis_ES"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:ES</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231231_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20241231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">tlfa:AccruedLiabilitiesAndOtherLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">tlfa:AccruedLiabilitiesAndOtherLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20231231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">tlfa:AccruedLiabilitiesAndOtherLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementGeographicalAxis_CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementGeographicalAxis_OtherCountriesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:OtherCountriesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementGeographicalAxis_CA"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementGeographicalAxis_OtherCountriesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:OtherCountriesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_StatementGeographicalAxis_US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:AllOtherCountriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:AllOtherCountriesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_VehiclesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_FiniteLivedIntangibleAssetsByMajorClassAxis_IntellectualPropertyMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</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-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tlfa:JPMorganChaseBankNAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-03</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230103to20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tlfa:JPMorganChaseBankNAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-03</xbrli:startDate><xbrli:endDate>2023-01-03</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tlfa:JPMorganChaseBankNAMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20130131_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndThirteenRestrictedStockPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2013-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20230430_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20200630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndThirteenRestrictedStockPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-06-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MinimumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">tlfa:NonEmployeeDirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240601to20240630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-06-01</xbrli:startDate><xbrli:endDate>2024-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20230601to20230630_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">tlfa:NonEmployeeDirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-06-01</xbrli:startDate><xbrli:endDate>2023-06-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240301to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-03-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20241231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:RestrictedStockAndRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:RestrictedStockAndRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:RestrictedStockAndRestrictedStockUnitsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c20220808_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">tlfa:ShareRepurchaseProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-08-08</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240917_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">tlfa:ShareRepurchaseProgramMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-09-17</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c20240831_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000909724</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">tlfa:ShareRepurchaseProgramMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-08-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="U001"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U002"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="U003"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:unit id="U004"><xbrli:measure>tlfa:Store</xbrli:measure></xbrli:unit><xbrli:unit id="U005"><xbrli:measure>tlfa:Segment</xbrli:measure></xbrli:unit><xbrli:unit id="U006"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="U007"><xbrli:measure>tlfa:Discount</xbrli:measure></xbrli:unit><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_0e2f76ca8f8a4dd3855c17ba90c36408" toRefs="Foot_014120d6f7a840db89bc9773e88e6d8a" linkRole="http://www.xbrl.org/2003/role/link"/><ix:relationship order="1.0" arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote" fromRefs="Fact_d03490cb70344061a8a0d00416a40a4b" toRefs="Foot_014120d6f7a840db89bc9773e88e6d8a" linkRole="http://www.xbrl.org/2003/role/link"/></ix:resources></ix:header></div>
<div style="line-height: initial;">

  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <hr style="border: none; border-bottom: 1px solid black; border-top: 4px solid black; height: 10px; color: #ffffff; background-color: #ffffff; text-align: center; margin-left: auto; margin-right: auto;"/>
    <div>
      <div style="text-align: center; font-size: 14pt; font-weight: bold; font-family: 'Times New Roman';">UNITED STATES<br/>
      </div>

      <div style="text-align: center; font-size: 14pt; font-weight: bold; font-family: 'Times New Roman';">SECURITIES AND EXCHANGE COMMISSION</div>

      <div style="text-align: center; font-size: 12pt; font-weight: bold; font-family: 'Times New Roman';">Washington, D.C.&#160; 20549</div>

      <div style="text-align: center; font-size: 18pt; font-weight: bold; font-family: 'Times New Roman';">Form <ix:nonNumeric name="dei:DocumentType" id="Fact_ea7a8776361747c7b9c6ba66adcadf5d" contextRef="c20250101to20250331">10-Q</ix:nonNumeric></div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;">(Mark One)</div>

      <div style="font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:DocumentQuarterlyReport" id="Fact_085822ea07944fc58bb15cc062aff7a6" contextRef="c20250101to20250331" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric> QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE
        SECURITIES EXCHANGE ACT OF 1934</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;">For the quarterly period ended <ix:nonNumeric name="dei:DocumentPeriodEndDate" id="Fact_4bdbcca0ef4142b8a42e621c9b4982c8" contextRef="c20250101to20250331" format="ixt:date-monthname-day-year-en">March 31, 2025</ix:nonNumeric></div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">or</div>

      <div style="font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonNumeric name="dei:DocumentTransitionReport" id="Fact_0f361fc08be64bfa9d1146a5ff786639" contextRef="c20250101to20250331" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric> TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE
        SECURITIES EXCHANGE ACT OF 1934</div>

      <div style="font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">For the transition period from __________ to ______________</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">Commission File Number <ix:nonNumeric name="dei:EntityFileNumber" id="Fact_74d6d4b6f52940bdadaeab62a63ff9f1" contextRef="c20250101to20250331">1-12368</ix:nonNumeric></div>

      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 100%; vertical-align: top;">
              <div style="text-align: center;"><img height="58" width="300" src="image00001.jpg" alt="graphic" style="height: 58px; width: 300px;"/></div>
            </td>

  </tr>


</table>
      <div style="text-align: center; font-size: 24pt; font-weight: bold; font-family: 'Times New Roman';"><span style="text-decoration: underline;"><span style="font-size: 14pt;"><ix:nonNumeric name="dei:EntityRegistrantName" id="Fact_af778d69a49248dbb3d85c2769c090f0" contextRef="c20250101to20250331">TANDY LEATHER FACTORY, INC</ix:nonNumeric></span>.</span></div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Exact name of registrant as specified in its charter)</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 49%; vertical-align: top;">
              <div style="text-align: center; font-weight: bold;"><span style="text-decoration: underline;"><ix:nonNumeric name="dei:EntityIncorporationStateCountryCode" id="Fact_2551b4a841c947f0ad1422d312d2be60" contextRef="c20250101to20250331" format="ixt-sec:stateprovnameen">Delaware</ix:nonNumeric><br/>
                </span></div>
            </td>

    <td colspan="1" style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 49%; vertical-align: top;">
              <div style="text-align: center; font-weight: bold;"><span style="text-decoration: underline;"><ix:nonNumeric name="dei:EntityTaxIdentificationNumber" id="Fact_f7d0091b1f0f49d1806431b30a4a2be8" contextRef="c20250101to20250331">75-2543540</ix:nonNumeric><br/>
                </span></div>
            </td>

  </tr>

  <tr>

    <td style="width: 49%; vertical-align: top;">
              <div style="text-align: center;">(State or other jurisdiction of incorporation or organization)</div>
            </td>

    <td colspan="1" style="width: 2%; vertical-align: top;">&#160;</td>

    <td style="width: 49%; vertical-align: top;">
              <div style="text-align: center;">(I.R.S. Employer Identification No.)</div>
            </td>

  </tr>


</table>
      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><ix:nonNumeric name="dei:EntityAddressAddressLine1" id="Fact_aa3f3a8f098642828da4bac3ad02defe" contextRef="c20250101to20250331">1900 Southeast Loop 820</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressCityOrTown" id="Fact_1d00eac9f6b34ad1ab1673e3b27af7c7" contextRef="c20250101to20250331">Fort Worth</ix:nonNumeric>, <ix:nonNumeric name="dei:EntityAddressStateOrProvince" id="Fact_b415e9e785154cdbaa1d2a77f04c7862" contextRef="c20250101to20250331" format="ixt-sec:stateprovnameen">Texas</ix:nonNumeric>&#160; <ix:nonNumeric name="dei:EntityAddressPostalZipCode" id="Fact_5f9c7d174d824517adf305bb500f504f" contextRef="c20250101to20250331">76140</ix:nonNumeric></span></div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Address of principal executive offices) (Zip code)</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;">(<ix:nonNumeric name="dei:CityAreaCode" id="Fact_93dde46eb33f4b25b2f148158c6d9bdf" contextRef="c20250101to20250331">817</ix:nonNumeric>) <ix:nonNumeric name="dei:LocalPhoneNumber" id="Fact_6a4573cd1cab407f9eaa99429fca0739" contextRef="c20250101to20250331">872-3200</ix:nonNumeric></span></div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Registrant&#8217;s telephone number, including area code)</div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div style="text-align: center;">
        <hr style="background-color: #000000; border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; margin: 0px auto; height: 2px; width: 50%; color: #000000; margin-left: auto; margin-right: auto;"/></div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">(Former name, former address and former fiscal year, if changed since last report)</div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <table cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; width: 99%; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; border-spacing: 0;">


  <tr>

    <td style="width: 33%; vertical-align: top;">
              <div style="text-align: center;"><span style="text-decoration: underline;">Title of each class</span></div>
            </td>

    <td style="width: 33%; vertical-align: top;">
              <div style="text-align: center;"><span style="text-decoration: underline;">Trading Symbol</span></div>
            </td>

    <td style="width: 33%; vertical-align: top;">
              <div style="text-align: center;"><span style="text-decoration: underline;">Name of each exchange on which registered</span></div>
            </td>

  </tr>

  <tr>

    <td style="width: 33%; vertical-align: top;">
              <div style="text-align: center;"><ix:nonNumeric name="dei:Security12bTitle" id="Fact_ca17375a946e427eb4b113f21c3b9ce0" contextRef="c20250101to20250331">Common Stock, par value $0.0024</ix:nonNumeric><br/>
              </div>
            </td>

    <td style="width: 33%; vertical-align: top;">
              <div style="text-align: center;"><ix:nonNumeric name="dei:TradingSymbol" id="Fact_864e13c1a36d470ba2c3b8bbf3822bb0" contextRef="c20250101to20250331">TLF</ix:nonNumeric><br/>
              </div>
            </td>

    <td style="width: 33%; vertical-align: top;">
              <div style="text-align: center;">The <ix:nonNumeric name="dei:SecurityExchangeName" id="Fact_4ee164c3793d42119b54affa1d397360" contextRef="c20250101to20250331" format="ixt-sec:exchnameen">Nasdaq</ix:nonNumeric> Capital Market<br/>
              </div>
            </td>

  </tr>


</table>
      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the
        preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.&#160; <ix:nonNumeric name="dei:EntityCurrentReportingStatus" id="Fact_4461eeb8a8844f20b0f6754203b45657" contextRef="c20250101to20250331">Yes</ix:nonNumeric> &#9746;&#160; No &#9744;</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T
        (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). <ix:nonNumeric name="dei:EntityInteractiveDataCurrent" id="Fact_96a9d843f5b3491ea0e2056912a2b84a" contextRef="c20250101to20250331">Yes</ix:nonNumeric>
        &#9746;&#160; No &#9744; <br/>
      </div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging
        growth company.&#160; See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>

      <div>
        <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 13.31%; vertical-align: top;">&#160;</td>

    <td style="width: 34.68%; vertical-align: top;">
                <div style="text-align: justify;">Large accelerated filer &#9744;</div>
              </td>

    <td style="width: 52%; vertical-align: top;">
                <div style="text-align: justify;"><ix:nonNumeric name="dei:EntityFilerCategory" id="Fact_20f615cd7d35400a8f76d271540ee747" contextRef="c20250101to20250331" format="ixt-sec:entityfilercategoryen">Non-accelerated filer</ix:nonNumeric> &#9746;</div>
              </td>

  </tr>

  <tr>

    <td style="width: 13.31%; vertical-align: top;">&#160;</td>

    <td style="width: 34.68%; vertical-align: top;">
                <div style="text-align: justify;">Accelerated filer &#9744;</div>
              </td>

    <td style="width: 52%; vertical-align: top;">
                <div style="text-align: justify;">Smaller reporting company <ix:nonNumeric name="dei:EntitySmallBusiness" id="Fact_9251bca37f9f41e69649ae476930b5f5" contextRef="c20250101to20250331" format="ixt-sec:boolballotbox">&#9746;</ix:nonNumeric></div>
              </td>

  </tr>

  <tr>

    <td style="width: 13.31%; vertical-align: top;">&#160;</td>

    <td style="width: 34.68%; vertical-align: top;">&#160;</td>

    <td style="width: 52%; vertical-align: top;">
                <div style="text-align: justify;">Emerging growth company <ix:nonNumeric name="dei:EntityEmergingGrowthCompany" id="Fact_99979506b0434dcaa2a30491cf0aa6a6" contextRef="c20250101to20250331" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric></div>
              </td>

  </tr>


</table>
      </div>

      <div><br/></div>

      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised
        financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. &#9744;</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes <ix:nonNumeric name="dei:EntityShellCompany" id="Fact_b54d0fb7282b4fc8b674c35c2122713d" contextRef="c20250101to20250331" format="ixt-sec:boolballotbox">&#9744;</ix:nonNumeric> No &#9746;</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;">As of April 30, 2025, the registrant had <ix:nonFraction name="dei:EntityCommonStockSharesOutstanding" id="Fact_4bf9a833d9c8429985c70950ed7257c6" contextRef="c20250430" unitRef="U001" decimals="INF" scale="0" format="ixt:num-dot-decimal">8,512,554</ix:nonFraction> shares of Common Stock,
        par value $0.0024 per share, outstanding.</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div>
        <hr style="border: none; border-bottom: 4px solid black; border-top: 1px solid black; height: 10px; color: #ffffff; background-color: #ffffff; text-align: center; margin-left: auto; margin-right: auto;"/> </div>

      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="page-break-after:always;" class="BRPFPageBreak">
          <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      </div>

      <!--PROfilePageNumberReset%Num%2%%%--> </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: bold; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt;">TANDY LEATHER FACTORY, INC.</div>

    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 700; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt;"><br/>
    </div>

    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: bold; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial; font-size: 10pt;">FORM 10-Q</div>

    <div>
      <div style="font-family: 'Times New Roman'; font-size: 10pt;">
        <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
          <div>
            <div style="font-size: 10pt;"><br/>
            </div>

            <div style="font-size: 10pt;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">
                <div style="text-align: center; font-family: 'Times New Roman'; font-size: 12pt; font-weight: bold;">FOR THE QUARTER ENDED March 31, 2025</div>

              </div>

            </div>

          </div>

        </div>

      </div>

    </div>

    <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
      <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">
        <div>
          <div style="font-family: 'Times New Roman'; font-size: 10pt;">
            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"> <br/>
            </div>

            <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><!--Anchor--><!--Anchor-->TABLE OF CONTENTS<a id="TABLEOFCONTENTS"><!--Anchor--></a></div>

          </div>

        </div>

        <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">
          <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
          </div>

          <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">
            <table cellspacing="0" cellpadding="0" border="0" style="background-color: #FFFFFF; letter-spacing: normal; width: 100%; word-spacing: 0px; color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-transform: none; border-spacing: 0;">


  <tr>

    <td rowspan="1" colspan="2" style="font-weight: bold; background-color: rgb(204, 238, 255);"><a href="#FINANCIALINFORMATION">PART I.&#160; FINANCIAL INFORMATION<br/>
                    </a></td>

    <td style="width: 8%; font-weight: bold; background-color: rgb(204, 238, 255); text-align: right;">4</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; font-weight: bold;">&#160;</td>

    <td rowspan="1" style="width: 89%; font-weight: bold;">&#160;</td>

    <td rowspan="1" style="width: 8%;"><br/>
                  </td>

  </tr>

  <tr>

    <td colspan="1" style="width: 3%; font-weight: normal; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89%; font-weight: normal; background-color: rgb(204, 238, 255);">
                    <div><a href="#FinancialStatements.">Item 1. Condensed Consolidated Financial Statements (Unaudited).</a></div>
                  </td>

    <td style="width: 8%; background-color: rgb(204, 238, 255); text-align: right;">4<br/>
                  </td>

  </tr>

  <tr>

    <td rowspan="1" colspan="1" style="width: 3%; font-weight: normal;">&#160;</td>

    <td rowspan="1" style="width: 89%; font-weight: normal;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="font-weight: normal; width: 3%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="font-weight: normal; width: 89%; background-color: rgb(204, 238, 255);">
                    <div>
                      <div style="margin-left: 9pt;"><a href="#NOTES">NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)</a></div>
                    </div>
                  </td>

    <td style="width: 8%; text-align: right; background-color: rgb(204, 238, 255);">8<br/>
                  </td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; font-weight: bold;">&#160;</td>

    <td rowspan="1" style="width: 89%; font-weight: bold;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; font-weight: normal; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89%; font-weight: normal; background-color: rgb(204, 238, 255);">
                    <div><a href="#ManagementsDiscussionandA">Item 2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations.</a></div>
                  </td>

    <td rowspan="1" style="width: 8%; font-weight: normal; text-align: right; background-color: rgb(204, 238, 255);">18</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; font-weight: bold;">&#160;</td>

    <td rowspan="1" style="width: 89%; font-weight: bold;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="2" rowspan="1" style="font-weight: bold; background-color: rgb(204, 238, 255);"><a href="#PARTII.OTHERINFORMATION">PART II.&#160; OTHER INFORMATION</a></td>

    <td rowspan="1" style="width: 8%; font-weight: bold; text-align: right; background-color: rgb(204, 238, 255);">23</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%;">&#160;</td>

    <td rowspan="1" style="width: 89%;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89%; background-color: rgb(204, 238, 255);">
                    <div><a href="#LegalProceedings.">Item 1. Legal Proceedings.</a></div>
                  </td>

    <td rowspan="1" style="width: 8%; text-align: right; background-color: rgb(204, 238, 255);">23</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%;">&#160;</td>

    <td rowspan="1" style="width: 89%;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89%; background-color: rgb(204, 238, 255);">
                    <div><a href="#RiskFactors.">Item 1A. Risk Factors.</a></div>
                  </td>

    <td rowspan="1" style="width: 8%; text-align: right; background-color: rgb(204, 238, 255);">23</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%;">&#160;</td>

    <td rowspan="1" style="width: 89%;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89%; background-color: rgb(204, 238, 255);">
                    <div><a href="#UnregisteredSalesofEquity">Item 2. Unregistered Sales of Equity Securities and Use of Proceeds </a></div>
                  </td>

    <td rowspan="1" style="width: 8%; text-align: right; background-color: rgb(204, 238, 255);">24</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%;">&#160;</td>

    <td rowspan="1" style="width: 89%;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td rowspan="1" style="width: 89%; background-color: rgb(204, 238, 255);">
                    <div><a href="#Exhibits.">Item 6. Exhibits.</a></div>
                  </td>

    <td rowspan="1" style="width: 8%; text-align: right; background-color: rgb(204, 238, 255);">24</td>

  </tr>

  <tr>

    <td colspan="1" rowspan="1" style="width: 3%;">&#160;</td>

    <td rowspan="1" style="width: 89%;">&#160;</td>

    <td rowspan="1" style="width: 8%; text-align: right;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 3%; background-color: rgb(204, 238, 255);" colspan="1" rowspan="1">&#160;</td>

    <td style="width: 89%; background-color: rgb(204, 238, 255);" rowspan="1">
                    <div><a href="#SIGNATURES">SIGNATURES</a></div>
                  </td>

    <td rowspan="1" style="width: 8%; text-align: right; background-color: rgb(204, 238, 255);">26</td>

  </tr>


</table>
          </div>

          <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"><br/>
          </div>

        </div>

      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">2</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

      <!--PROfilePageNumberReset%Num%1%%%-->
<div> Cautionary Statement Regarding Forward-Looking Statements and Information
      </div>
<div>
<div><br/></div>

        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: normal;">The following discussion, as well as other portions of this Form 10-Q, contains forward-looking statements that reflect our
          plans, estimates and beliefs.&#160; Any such forward-looking statements (including, but not limited to, statements to the effect that Tandy Leather Factory, Inc. (&#8220;TLF&#8221;) or its management &#8220;anticipates,&#8221; &#8220;plans,&#8221; &#8220;estimates,&#8221; &#8220;expects,&#8221; &#8220;believes,&#8221;
          &#8220;intends,&#8221; and other similar expressions) that are not statements of historical fact should be considered forward-looking statements and should be read in conjunction with our Consolidated Financial Statements and related notes contained
          elsewhere in this report.&#160; These forward-looking statements are made based upon management&#8217;s current plans, expectations, estimates, assumptions and beliefs concerning future events impacting us and should be read carefully because they involve
          risks and uncertainties.&#160; We assume no obligation to update or otherwise revise these forward-looking statements, except as required by law.&#160; Specific examples of forward-looking statements include, but are not limited to, statements regarding
          our forecasts of financial performance, share repurchases, store openings or store closings, capital expenditures and working capital requirements.&#160; Our actual results could materially differ from those discussed in such forward-looking
          statements.&#160; Factors that could cause or contribute to such differences include, but are not limited to, those discussed below and particularly in &#8220;Item 1A. Risk Factors&#8221; and &#8220;Item 7. Management&#8217;s Discussion and Analysis of Financial Condition
          and Results of Operations&#8221; of our Annual Report on Form 10-K for the fiscal year ended December 31, 2024.&#160; Unless the context otherwise indicates, references in this Form&#160;10-Q to &#8220;TLF,&#8221; &#8220;we,&#8221; &#8220;our,&#8221; &#8220;us,&#8221; &#8220;the Company,&#8221; &#8220;Tandy,&#8221; or &#8220;Tandy
          Leather&#8221; mean Tandy Leather Factory, Inc., together with its subsidiaries.</div>

        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: normal;"> <br/>
        </div>

        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">3</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div style="width: 100%;" class="BRPFPageHeader">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>

        <!--PROfilePageNumberReset%Num%2%%%--> </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <!--Anchor-->
      <div style="font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><!--Anchor--><!--Anchor--><!--Anchor--><!--Anchor--><!--Anchor-->PART I.<!--Anchor-->&#160;
        <!--Anchor--><!--Anchor-->FINANCIAL INFORMATION<a id="FINANCIALINFORMATION"><!--Anchor--></a><!--Anchor--><!--Anchor--></div>

      <a id="FinancialStatements."><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 35pt; vertical-align: top;"><!--Anchor--><span style="font-weight: bold;"><!--Anchor--><!--Anchor-->Item 1.<!--Anchor--></span></td>

    <td style="vertical-align: top;">
              <!--Anchor-->
              <!--Anchor-->
              <div style="font-weight: bold;"><!--Anchor--><!--Anchor--><!--Anchor--><!--Anchor-->Consolidated Financial Statements</div>
            </td>

  </tr>


</table>
      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Tandy Leather Factory, Inc.</div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">
        <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-weight: bold;">Consolidated Balance Sheets<br/>
        </div>

      </div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">(amounts in thousands, except share data and per share data)</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; text-align: center; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center;">March 31,</td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: center; font-weight: bold; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" rowspan="1" style="vertical-align: bottom; text-align: center; font-weight: bold;"> December 31,</td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">
                <div style="text-align: center;"><span style="font-weight: bold;"> 2025</span></div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center;"><span style="font-weight: bold;">2024 </span></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; text-align: center; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" rowspan="1" style="vertical-align: bottom; font-weight: bold; text-align: center;"> (Unaudited)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="font-weight: bold; text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" rowspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
              <div style="color: rgb(0, 0, 0); font-weight: bold; text-align: center;">ASSETS</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">CURRENT ASSETS:</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Cash and cash equivalents</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_f62070ca53104d4ba151c630e4e4a1e9" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,594</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashAndCashEquivalentsAtCarryingValue" id="Fact_acd4eb7224d943e981813fec3b10eb8a" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,271</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -9pt; margin-left: 9pt;"><span style="color: rgb(0, 0, 0);">Accounts receivable-trade, net of allowance for credit losses of </span>$<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" id="Fact_46d596c2d45c4fefa92b51156eb74549" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" id="Fact_293bf35261534227b66591d272267701" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">49</ix:nonFraction></ix:nonFraction></span><span style="color: rgb(0, 0, 0);"> at <span style="text-indent: 0pt;">March 31</span>, <span style="text-indent: 0pt;">2025</span> and December 31, <span style="text-indent: 0pt;">2024</span></span></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_b43d23186a354ef087c9ca3f0714944f" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">301</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AccountsReceivableNetCurrent" id="Fact_f6edb4e0e0b749f68305f01636331399" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">331</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Inventory</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_082e0eee2b8a4713a7c6283f78807a0c" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,350</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_04cf1b1bb642476d9415c65d064283d1" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,556</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Income tax receivable</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncomeTaxesReceivable" id="Fact_9569c2a285484bf5a1e8671ca34e2169" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">385</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncomeTaxesReceivable" id="Fact_26db74e67738448993d3afee0b1d2d09" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">384</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Prepaid expenses</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PrepaidExpenseCurrent" id="Fact_41b6488a3a3a44a88ad21a52af44d03f" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">704</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PrepaidExpenseCurrent" id="Fact_7ab4bb06c3b8482e84d348cd41978ad3" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">898</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Other current assets</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_72f4735c8452450588a5082fc9155886" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">95</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherAssetsCurrent" id="Fact_3dbac0e053c54355b179d600e1c205ca" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">96</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Total current assets</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_995f57d29ee64d2db251b190ed0f3ec3" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">59,429</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AssetsCurrent" id="Fact_b5b9f863a39241b5afc9a427225f9788" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">50,536</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Property and equipment, at cost</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_1729587441e2462495c0439e1e1c882b" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">21,490</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentGross" id="Fact_7acd6689df674f3dbab31f92f3a08df8" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,655</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Less accumulated depreciation</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" id="Fact_3e4fb85c9e6542f39e5a78298cfaf205" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">15,239</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" id="Fact_10f9e733c68f4ac4914585c13e5fd0a5" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,320</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Property and equipment, net</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_f72bd034c5f44a138409a07a60bc635c" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">6,251</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PropertyPlantAndEquipmentNet" id="Fact_5bd5772e381b4d8f813e1dd299e40828" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,335</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Operating lease assets</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" id="Fact_71eb22a417f54533b1e1b044e588bfc6" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,531</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAsset" id="Fact_1018266c2a7540a195a15dca0489054c" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,323</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;"><span style="color: rgb(0, 0, 0);"><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-indent: 0px; text-transform: none; word-spacing: 0px; white-space: normal; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">Deferred income taxes</span> </span></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_3f515628f2cf4f328ad46a7cb2c99fd1" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,041</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:DeferredIncomeTaxAssetsNet" id="Fact_70f24457e3214e37805977f93e7e030c" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,213</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Other assets</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" id="Fact_0541ef70243b490987cc2734e2f1ade0" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">664</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherAssetsNoncurrent" id="Fact_7a579ba1a3f8410fbbef8802e1dfd86f" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">517</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 76%; padding-bottom: 4px;">
              <div style="color: rgb(0, 0, 0); font-weight: bold; text-align: center;">TOTAL ASSETS</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:Assets" id="Fact_1fe1585753e64adea846847776632ae1" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">77,916</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:Assets" id="Fact_70cffd90289e4302b54227519ea5ff7f" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,924</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 76%;">
              <div style="color: rgb(0, 0, 0); font-weight: bold; text-align: center;">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: left;">CURRENT LIABILITIES:</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Accounts payable-trade</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AccountsPayableTradeCurrent" id="Fact_11c12efc92224acda9e458cb99da55e6" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,407</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AccountsPayableTradeCurrent" id="Fact_ad09d85a682f4e8d97b11d1b3b7dbfb4" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,110</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Accrued expenses and other liabilities</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AccruedLiabilitiesAndOtherLiabilities" id="Fact_4eef18432c924b56b3185d5a927b281c" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,692</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AccruedLiabilitiesAndOtherLiabilities" id="Fact_aac5d183456b4ea0b8f8a0b9dabb0ca5" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,571</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%;">Income taxes payable <br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:TaxesPayableCurrent" id="Fact_1e61e8dbeefb4fd88509d39f3b899a0c" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,884</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><ix:nonFraction name="us-gaap:TaxesPayableCurrent" id="Fact_cda6dbc814a7488cb3d6edbc252dfa50" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Current portion of operating lease liabilities</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" id="Fact_b0ed5a54a31d412b9206534fe59808b1" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,205</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityCurrent" id="Fact_2404d22b257443b8ba6b802bb6a77552" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,205</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Total current liabilities</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_194f3a521f8542ed98e877f03b2c7a02" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,188</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:LiabilitiesCurrent" id="Fact_02ec94ec4d2a470489824c13737974d1" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,886</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Uncertain tax positions</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:LiabilityForUncertainTaxPositionsNoncurrent" id="Fact_c9ad2f5c2f774ea4a3d5d622da635aac" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">248</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:LiabilityForUncertainTaxPositionsNoncurrent" id="Fact_8de18742607b436280eb413a3b253259" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">248</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Other non-current liabilities</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_d949d25374384172856dc7f66fdca62b" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">77</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherLiabilitiesNoncurrent" id="Fact_204d66e26dbf491cba8340ec6a46a474" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">76</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Operating lease liabilities, non-current</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_7dd3626f31de4d73899181cc1a2a07b9" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,514</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseLiabilityNoncurrent" id="Fact_18ae09ec07c649dbb83a7ab0e8114e93" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,561</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: left;">COMMITMENTS AND CONTINGENCIES (Note 6)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><span style="-sec-ix-hidden:Fact_eac3d0e62ab048b9bd84957bc7063da0"> </span></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;"><span style="-sec-ix-hidden:Fact_95a854b3e30f455aaddbc57633032b4a"> </span></td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: center; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: left;">STOCKHOLDERS&#8217; EQUITY:</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Common stock, $<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact_af70c7f62d8a42698a7ffb29891ea158" contextRef="c20250331" unitRef="U003" decimals="4" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockParOrStatedValuePerShare" id="Fact_67ad98c9aca24ba8a594ce8c89c08b06" contextRef="c20241231" unitRef="U003" decimals="4" scale="0" format="ixt:num-dot-decimal">0.0024</ix:nonFraction></ix:nonFraction></span> par value; <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" id="Fact_10d33001bd8a4b708a13ea2111c77547" contextRef="c20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:CommonStockSharesAuthorized" id="Fact_05c4c121b89f421f98b20e1e3bdd917e" contextRef="c20241231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">25,000,000</ix:nonFraction></ix:nonFraction></span> shares authorized; <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" id="Fact_3cef10a11764446d9e282f6524a327d8" contextRef="c20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">9,936,930</ix:nonFraction></span>
                and <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesIssued" id="Fact_83ea9d00f0eb43668b9ae6615ee8aaa0" contextRef="c20241231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">9,920,957</ix:nonFraction></span> shares issued at <span style="text-indent: 0pt;">March 31</span>, <span style="text-indent: 0pt;">2025</span> and December 31, <span style="text-indent: 0pt;">2024</span>, respectively; <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" id="Fact_304d4910515b4c3b92a82deb23a70c36" contextRef="c20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,512,554</ix:nonFraction></span> and <span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:CommonStockSharesOutstanding" id="Fact_57df0afafed8470d99fc99f10a787aa5" contextRef="c20241231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,496,581</ix:nonFraction></span> shares outstanding at <span style="text-indent: 0pt;">March 31</span>,
                <span style="text-indent: 0pt;">2025</span> and December 31, <span style="text-indent: 0pt;">2024</span>,
                respectively </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CommonStockValue" id="Fact_86a951983e904f92bd6f529a6be80fc8" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CommonStockValue" id="Fact_d963ecd1aeaf46ffa26e5b4a762d7524" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Paid-in capital</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" id="Fact_b25aaa898f8447d08deaedfd3c1c9a54" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,622</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdditionalPaidInCapital" id="Fact_c749042e61ee41b1af7383819983ddf1" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,529</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Retained earnings</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" id="Fact_5d919692d0154de7b43c9af45fd1dd13" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,417</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RetainedEarningsAccumulatedDeficit" id="Fact_631d680706e2489cbaebfe4c28826c67" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,486</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Treasury stock at cost (<span style="text-indent: 0pt;"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" id="Fact_f55a4907f73940b485a040204406f87d" contextRef="c20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:TreasuryStockCommonShares" id="Fact_13dd1be091a7489ab34f6ffdc13d6c61" contextRef="c20241231" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">1,424,376</ix:nonFraction></ix:nonFraction></span> shares at <span style="text-indent: 0pt;">March 31, 2025</span> and <span style="text-indent: 0pt;">December 31, 2024</span>)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:TreasuryStockCommonValue" id="Fact_95e3dbf4d3dc48628c3ce62a07cc30ef" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,773</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:TreasuryStockCommonValue" id="Fact_152d00a129594a6fa9afdcfcda3fc243" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">9,773</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Accumulated other comprehensive loss, net of tax </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" id="Fact_575f180949724a33aa35bf42e4c0e306" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,400</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" id="Fact_cc94befd8c434ea684d35d1228e17802" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,112</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Total stockholders&#8217; equity</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_f883230d5eaf479fa435f783bf88261f" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,889</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_c6ee96b092f44dc88a0f39788718f460" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">57,153</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0); font-weight: bold; text-indent: -9pt; margin-left: 18pt;">TOTAL LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" id="Fact_197ad2ddc1fb41eb92432bd8c7a403ca" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">77,916</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:LiabilitiesAndStockholdersEquity" id="Fact_15f1e2a04f714518b29ae79d86c2c952" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">74,924</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The accompanying notes are an integral part of these Consolidated Financial Statements.</div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">4</span></div>

        <div class="BRPFPageBreak" style="page-break-after:always;">
          <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

      <!--PROfilePageNumberReset%Num%3%%%--> </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Tandy Leather Factory, Inc.</div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">
        <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-weight: bold;">Consolidated Statements of Operations and Comprehensive Income</div>

      </div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">(amounts in thousands, except share and per share data)</div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">(Unaudited) </div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Three Months Ended March 31,</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2025<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Net sales</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_28ab1dc5f0a2424d8e9507d5f14104fc" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,036</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_f76448f774c349d886f63f859102ba20" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,275</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Cost of sales</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" id="Fact_08ad0ab3b90d4a29bcd05a5a2412c222" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,318</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSold" id="Fact_3001a87b92ac45178335e06196f78154" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">8,355</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Gross profit</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_ad1521a8e2b64a6082f4b08d9898ae70" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,718</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:GrossProfit" id="Fact_1e45e4e3b4874a0481a1321d4d8ba72f" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,920</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Operating expenses</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingCostsAndExpenses" id="Fact_6ed6ccd523dc416e80f9983374ac1430" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,456</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingCostsAndExpenses" id="Fact_d52f31b1a1d54a1aa6fd79b5821860dd" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,271</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; text-indent: 0pt; margin-left: 9pt;">Income from operations</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_c1838608426a4bc68dbd6c106f0a789e" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">262</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingIncomeLoss" id="Fact_98932bab7fba4fb4b34a99ce01a86f3f" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">649</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Other income (expense):</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Interest income<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InterestIncomeExpenseNet" id="Fact_c2da8dd0893244b498e3547c076b4fbb" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">190</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InterestIncomeExpenseNet" id="Fact_e330165548d24674858cfc5fd059ddd2" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">84</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">Gain on disposal of Headquarter (see footnote 8) <br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" id="Fact_560eacfd938c48b592927e86818eff16" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,676</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" id="Fact_91d9e63d0ecd4c7aac9c3d7ac0341f45" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Other, net (see footnote 8)<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_108d6a79397547c48d7e11915d592dac" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,273</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:OtherNonoperatingIncomeExpense" id="Fact_9d23b23709c44bbbac8a99ecacb73f07" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">26</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Total other income<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" id="Fact_18fa3be61f484139a1c6e089534ab407" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,593</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NonoperatingIncomeExpense" id="Fact_b266839f55734d1c8a9e0ee18ce1c75c" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">58</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; text-indent: 9pt;">Income before income taxes</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_6b114d3106eb415bb6c8bd352b3580a8" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,855</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" id="Fact_65c36355252f4445a090cedf55f3a9e1" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">707</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Income tax provision</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_6f0a9abd2b854880a4cea52c1b5c55c1" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,179</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncomeTaxExpenseBenefit" id="Fact_bc0ef930725142b88fecbd19535f4d09" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">182</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; margin-left: 9pt;">Net income</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_e1da1b23cdf8445382ee1559f1ca10ff" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,676</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_11c09da99dc541c58944950ba1d6e947" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">525</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Foreign currency translation adjustments, net of tax</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_9f58233529184502bbb78e902c17d11f" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">288</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_890fc1bf9013436da25f0f2340b633fd" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">170</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; text-indent: 0pt; margin-left: 9pt;">Comprehensive income</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" id="Fact_8d5799618a2f4ddea292ae2625003114" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,388</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" id="Fact_01793ba7ebe541fba3a045972bfb1d8c" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">695</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Net income per common share:</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Basic</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_af8bb7d74ccc49718439d1098784cea9" contextRef="c20250101to20250331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.49</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_eaffbdda29134a7c956b7bff6860d072" contextRef="c20240101to20240331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.06</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Diluted</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_38046fb445494e13844f410a6746d194" contextRef="c20250101to20250331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.47</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_b50308a356a34c2a966f7b204c6cd206" contextRef="c20240101to20240331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.06</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Weighted average number of shares outstanding:</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Basic</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_00df9490fe9e42b088c6215bca442e03" contextRef="c20250101to20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,501,204</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_92588e99a08f4138be083aa4c405f3d8" contextRef="c20240101to20240331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,400,354</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Diluted</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_69f91970b59748d19193498c1d859c4e" contextRef="c20250101to20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,595,320</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_aa28eee9a5574e6faff73c2a132c37ce" contextRef="c20240101to20240331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,500,354</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">The accompanying notes are an integral part of these Consolidated Financial Statements.</div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div class="BRPFPageFooter" style="width: 100%;"></div>

        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">5</span></div>

        <div class="BRPFPageBreak" style="page-break-after:always;">
          <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Tandy Leather Factory, Inc.</div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">
        <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-weight: bold;">Consolidated Statements of Cash Flows</div>

      </div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"> (amounts in thousands)</div>

      <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">(Unaudited)</div>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">For the Three Months Ended March 31,</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2025</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2024<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Cash flows from operating activities:</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Net income</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div>$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_afe992936f844416b8ec4e0642eda8cb" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,676</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_e470e02c58864ab59f66c55f2a1e2d10" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">525</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div>
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Adjustments to reconcile net income to net cash used in operating activities:</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Depreciation and amortization</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSoldDepreciation" id="Fact_5d306f983ba0498dba2fed642408e418" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">181</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CostOfGoodsAndServicesSoldDepreciation" id="Fact_9d059479e7944a349a773567501ebae2" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">321</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Operating lease asset amortization</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" id="Fact_69ca229d341848a68aa7ded03ac96b2f" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,105</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense" id="Fact_7b4a16c658e04ba38adc1f2b81daec3c" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">919</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">Gain on disposal of assets <br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">(<ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" id="Fact_a1e72c111d674bedbbc25036b427a604" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,676</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" id="Fact_b5bee080bb404371a8448d148b84663e" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Stock-based compensation</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_4a60c5e53a5347d1bd713fefaa2f3d72" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensation" id="Fact_05ede0e37f234aa19c82a4baf8e9a20a" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">197</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="margin-left: 9pt; text-indent: -9pt;">Deferred income taxes <br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" id="Fact_6fdd91095f244192b2886af765a9f3f7" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">173</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:DeferredIncomeTaxesAndTaxCredits" id="Fact_70210924cfb249b6b6f84f9fea140e6e" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Changes in operating assets and liabilities:</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Accounts receivable-trade</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div><ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_469f8b97f1f7415da1d2814d69cf02d0" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">31</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsReceivable" id="Fact_dabc86ad17ae465fa2b563c2397566c6" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">158</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Inventory</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_096a43d6e35345a295e31300db774b2d" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,227</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncreaseDecreaseInInventories" id="Fact_96a1de920fe6427ab54a9e01cf0cc156" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,184</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Prepaid expenses</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div><ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" id="Fact_039ceca9acba48cb89985abc7d8296ea" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">195</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncreaseDecreaseInPrepaidExpense" id="Fact_68e8dd6e5ecf4dd0af86becdaf14e5cc" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">72</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Other current assets</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherCurrentAssets" id="Fact_fe5302e6147a46c5ae71cf7dd317f2e9" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherCurrentAssets" id="Fact_491f602948a344b3845989ef3edec1dd" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">14</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Accounts payable-trade</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div>(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" id="Fact_c96a8bd3728f4af0bba7809769bbd558" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">35</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div>)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccountsPayable" id="Fact_ca15fff38ecb4ff189b818392e1504bd" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">115</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Accrued expenses and other liabilities</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div>(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedLiabilities" id="Fact_9b82894407074b9f8452abfb20b2f340" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">879</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div>)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInAccruedLiabilities" id="Fact_0e6e66ff0bd445bd9018c46734ae83a7" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,142</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Income taxes, net</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div><ix:nonFraction name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" id="Fact_ab2074bc20e94a28830c7dbb6e21bfa9" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">3,884</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:IncreaseDecreaseInDeferredIncomeTaxes" id="Fact_f98d9f3b08284482b86938b1ab3dacf0" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">163</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt;">Other assets</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div>(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherNoncurrentAssets" id="Fact_f736b47f9e4f451d893c54a6715a4536" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">150</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div>)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOtherNoncurrentAssets" id="Fact_c32c1139021049b9b92d23d88cdbfe3b" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Operating lease liabilities</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" id="Fact_086a534cae7b43948ab0a46cd58bb461" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,361</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:IncreaseDecreaseInOperatingLeaseLiability" id="Fact_7253ba0442d044e495e002816e1abeb3" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">892</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="color: rgb(0, 0, 0); text-indent: -9pt; margin-left: 9pt;">Total adjustments</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" id="Fact_9add301286934b06ac89dbb396719083" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">13,212</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" id="Fact_656485542e914606afe181c1345ebe54" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">561</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 76%; background-color: #CCEEFF;">
              <div style="font-weight: bold;">Net cash used in operating activities </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_c2af07cf40504a0fb3863d68e7713c4a" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">536</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInOperatingActivities" id="Fact_d7a467a27f7a4528a6ef47f8ce72ac48" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,086</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Cash flows used investing activities:</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Purchase of property and equipment</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_0e1b8a61db48485dad07cd192176e387" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,331</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" id="Fact_05556119cbdd43aebf16f66d8d972f68" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,227</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">Proceeds from Sale of property and equipment. net <br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfProductiveAssets" id="Fact_3b9b3ac8750b4224b9db24db523ed694" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,897</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><ix:nonFraction name="us-gaap:ProceedsFromSaleOfProductiveAssets" id="Fact_4d44930884404bd7a3beecb12839fdfb" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 76%;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">Net cash provided from (used in) investing activities </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_47f74efe31d24dd9855eaab1a527161d" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,566</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInInvestingActivities" id="Fact_011f12bbaf0d4984814f929f220e4fb1" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,227</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%;">
              <div style="color: rgb(0, 0, 0); text-indent: -7.2pt; font-family: 'Times New Roman'; font-weight: bold; margin-left: 7.2pt;">Cash flows from financing activities:</div>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt;">Payment of finance lease obligations</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:FinanceLeasePrincipalPayments" id="Fact_79576add873747dabed9e17088a219de" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:FinanceLeasePrincipalPayments" id="Fact_0c9ebe11742d4007b357682c77041e76" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px;">
              <div style="text-align: left; color: #000000; font-family: 'Times New Roman'; font-size: 10pt;">Dividend Paid</div>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:PaymentsOfDividendsCommonStock" id="Fact_46473d416579403c84085253c90d1d90" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,745</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">)</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:PaymentsOfDividendsCommonStock" id="Fact_5a34abec672f435687e581e3360bea67" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 76%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">Net cash used in financing activities </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_52b5a6396326442d92ad66588a1be6fe" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">12,745</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">(<ix:nonFraction name="us-gaap:NetCashProvidedByUsedInFinancingActivities" id="Fact_1038047a2ccc47d6bc708c0e60ff64a9" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: normal;">)</div>
            </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Effect of exchange rate changes on cash and cash equivalents</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_080bdd037b04484ea5579b7c14fff774" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">38</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_98ef8dbc02474477aab99427288ae4e1" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">298</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">
                <div style="text-align: left; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Net increase in cash and cash equivalents</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_c648e453dbe943ee9f38ad469a38a4e7" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">10,323</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" id="Fact_5d05fd4badb049b8949ff918ccfd5dbb" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">156</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Cash and cash equivalents, beginning of period</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_5acae741e051429da33001ab9e4162e6" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">13,271</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_3a0e050ab64445d7be3cc8dba22e693d" contextRef="c20231231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,159</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;">
              <div style="color: rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Cash and cash equivalents, end of period</div>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_da0d3ad6306c47cf8d9980e7f11ba572" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23,594</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" id="Fact_90edb0cf2a4f4de6a1f4b7ed34f115be" contextRef="c20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,315</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">The accompanying notes are an integral part of these Consolidated Financial Statements.</div>

      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">6</span></div>

        <div class="BRPFPageBreak" style="page-break-after:always;">
          <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

      <!--PROfilePageNumberReset%Num%5%%%--> </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Tandy Leather Factory, Inc.</div>

    <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Consolidated Statements of Stockholders&#8217; Equity </div>

    <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"> (amounts in thousands, except share data)</div>

    <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">(Unaudited)</div>

    <div style="color: rgb(0, 0, 0); font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
    </div>

    <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Number of </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Shares </div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Common Stock</div>
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> Outstanding</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Par Value</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> Paid-in Capital</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> Treasury Stock</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> Retained Earnings</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Accumulated<br/>
              Other<br/>
              Comprehensive<br/>
              Income (Loss)</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
            <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Total</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; background-color: #CCEEFF;">
            <div style="font-weight: bold; text-align: center;">Balance, December 31, 2024</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:SharesIssued" id="Fact_879c826c6e794172bfeb88d6ca610075" contextRef="c20241231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,496,581</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_e710d82e32fc4a5f985bb231be0d7047" contextRef="c20241231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_36ca0c5f59764cb1bf69e1291ee12225" contextRef="c20241231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,529</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_c4304b53369646538fd7b0855c677488" contextRef="c20241231_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">9,773</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_21721757e57147d889dc8cb1a34658bf" contextRef="c20241231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,486</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_72c3a25ac1ff463480eddf148f285ca0" contextRef="c20241231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,112</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_2357f622192740a0b9a63054a2a60af8" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">57,153</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Stock-based compensation expense</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_cb7fb7d3594b44f4833fe775cbcd648c" contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_46647acbedd8400593c9cf26382add47" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_5490ab3a653143008b91df2a72647ef3" contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_e8d9bf7017384508b685df83c2bfd781" contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_503cf0867fd34debb7ea16a40e53c9ee" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_d667005d327141a799794ba46f68b1e4" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">93</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0);">
              <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Vesting of restricted stock units</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" id="Fact_91718e187fa340f9a795afd776274f77" contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">15,973</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_88ae57efc6d4427398e331ad157a9c43" contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_03d97e17f72943a0816423129c20b941" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_be35ac8476f641f1b8f3633be0316448" contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_26fe610d76e9417bba0318133a0bf99f" contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_a5a5f60c898a4f5e9906c47338e9edd2" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_987877b8e3c64556b568748d01da4cf3" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Net income</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_654c7e925f4647e9aba63cee247333e2" contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_922b2916227149669193d390b6c8e99c" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_db591248c11440e8bdc42fe0f7223353" contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_f12153ca19b24f0ba741fa9891f72d38" contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,676</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_d7ab09a1f27a4d0f87d1c6440fcd5a97" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_e9f8da695a194054b249a97efd868271" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,676</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; background-color: #CCEEFF;" rowspan="1">Dividend Paid <br/>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1">-</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:DividendsCommonStockCash" id="Fact_6dbcc993695f4ccea1cad401d25e2622" contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:DividendsCommonStockCash" id="Fact_eedd8f929714424e92da2e839a9c019d" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:DividendsCommonStockCash" id="Fact_9629c9386127445fa350361241dbfc7d" contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:DividendsCommonStockCash" id="Fact_f78b6c41d03a48e1b91d0f70fc3b27ec" contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,745</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">)</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:DividendsCommonStockCash" id="Fact_f1d559d8e198497cb02167faff5e61bf" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" rowspan="1" colspan="1">(<ix:nonFraction name="us-gaap:DividendsCommonStockCash" id="Fact_1908e986057c4f38969345cfc6c50562" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,745</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">)</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; padding-bottom: 2px; white-space: nowrap;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Foreign currency translation adjustments, net of tax</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0);">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_e8174cdfc42a437f8efafd5fa7507810" contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_c9587add47654dcb818a3a5dd82371ea" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_4533227da46049adba5d01100e989ce5" contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_af7d84f4041840808e6502d96e0a041c" contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_d5743edefe14475b82d01377816dda1a" contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">288</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0);">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;">(<ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_6c89ac8fde23419b8c9c4921669db25c" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">288</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;">)</div>
          </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-weight: bold; text-align: center;">Balance, March 31, 2025</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:SharesIssued" id="Fact_b7fe04aab6fc4f2e9b6e5bbf5d513ace" contextRef="c20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,512,554</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_48240aaee90f4dfea491a1eaa2187440" contextRef="c20250331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_5de8278a96724a4a8268e7e8c4f568ba" contextRef="c20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,622</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_b12c04a294f441d1817131a65c910192" contextRef="c20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">9,773</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_ca2363f4edc7484b8508fa99a9bdf57f" contextRef="c20250331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,417</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_cb0e510164c94ed68d600d43ea8a85bc" contextRef="c20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">2,400</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_66341c83da0b4914bd4e172800d0ba09" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,889</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; background-color: #CCEEFF; white-space: nowrap;">
            <div style="font-weight: bold; text-align: center;">Balance, December 31, 2023</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:SharesIssued" id="Fact_77aee6195f82436fbba636960645d7c4" contextRef="c20231231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,399,245</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-weight: bold; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-weight: bold; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">$</td>

    <td valign="bottom" style="font-weight: bold; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_63145af91c5b4481921fafcd8e943b43" contextRef="c20231231_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23</ix:nonFraction></td>

    <td valign="bottom" style="font-weight: bold; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_92b612983bf6439eb584ea4cd277dc9e" contextRef="c20231231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">3,981</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_e6282c47f4aa44799f01924f36ad9104" contextRef="c20231231_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">9,773</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_1fdc8b3063d746a9ba1f9dc5f3afe8bf" contextRef="c20231231_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">63,659</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_8df13ac2068b40d7b5bc47f772cebc86" contextRef="c20231231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,544</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><br/>
            </div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_50b9018b364a480c8b8c1be7659db019" contextRef="c20231231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">56,346</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%;">
            <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Stock-based compensation expense</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);">-</div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_f56b62f326004a3ab836c75e69c716ae" contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_0cf8c46a0f1f42fcb2e8bafccb219fce" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">197</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_9b851fb7badc470db56bd5ccc27f39ee" contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_efbd04a1efd94d52933558b844e860b3" contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_9050325bcff54eabb53e4c021f2e01f6" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" id="Fact_6030eb3b93f949328a05c7889a2a3040" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">197</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0);">
              <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Vesting of restricted stock units</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" id="Fact_d674fde342e54bab9b42f42b8766c453" contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">2,727</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_57e7373e3e9c43bdbdf137ce03c16900" contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_57c37a9a8c224724a81fdcd7c6b00b79" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_faeed23a1693484599e157aa172a87ae" contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_9458d0626dd7483fba50d08954441ad9" contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_b12d939e65cb4956adc9a235ce83653c" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross" id="Fact_a9a2b40b730a4a6f90fa12b3531ad42b" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%;">
            <div style="color: rgb(0, 0, 0);">
              <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Net income</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">-</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_dde6aeab90304de28d67f097b5563ebf" contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_44f9e654a47d40ce8ed289f62c2062f1" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_18856cebe376474db40000851cf7762f" contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_d9b5a816a3fc4d53b80180f000de5ae2" contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">525</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_70b8e38fe79c4e3fbf078ecb910758c1" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_719241f6c9ba41cd87238c148121fc5b" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">525</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; padding-bottom: 2px; background-color: #CCEEFF;">
            <div style="color: rgb(0, 0, 0);">
              <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman';">Foreign currency translation adjustments, net of tax</div>
            </div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">-</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_50ab6a4692de43f08573029c5f510ac9" contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_a028d14be5924358bf6b2656c3ac9beb" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_0ae1389e85f744e0ae73b00616490d2c" contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_155657b09b904d148b50cdb682e294a3" contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:fixed-zero">-</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_d8cf6d9ef0f74c8fa835316996a68fb6" contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">170</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: normal;"><ix:nonFraction name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" id="Fact_e83df4b3ab0847d9b38f6038c4368f8a" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">170</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 16%; padding-bottom: 4px; white-space: nowrap;">
            <div style="font-weight: bold; text-align: center;">Balance, March 31, 2024</div>
          </td>

    <td valign="bottom" style="font-weight: bold; text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-weight: bold; text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="font-weight: bold; vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1"><ix:nonFraction name="us-gaap:SharesIssued" id="Fact_0f936d0aa29c4a38950e80b289177bd0" contextRef="c20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,401,972</ix:nonFraction></td>

    <td valign="bottom" style="font-weight: bold; text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_92eabac374fc48cebf9009578f0d4aea" contextRef="c20240331_StatementEquityComponentsAxis_CommonStockMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">23</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_bc43db5fa7d64bc4a11f5aa5b8f1c942" contextRef="c20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">4,178</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_4fa6fe51a7cd4481928d356f37bcab9d" contextRef="c20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">9,773</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_e6e50e2739504d8ab852c466e720bf6a" contextRef="c20240331_StatementEquityComponentsAxis_RetainedEarningsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">64,184</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">(<ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_bfa4eef4db34490eaac81c616350116e" contextRef="c20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember" unitRef="U002" decimals="-3" scale="3" sign="-" format="ixt:num-dot-decimal">1,374</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">)</div>
          </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
          </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px;" colspan="1">
            <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:StockholdersEquity" id="Fact_51f3e13ff8424984bc4f9af02b02e0f8" contextRef="c20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">57,238</ix:nonFraction></div>
          </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
    <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
    </div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;">The accompanying notes are an integral part of these Consolidated Financial Statements.</div>

    <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
    </div>

    <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
      <div style="width: 100%;" class="BRPFPageFooter"></div>

      <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">7</span></div>

      <div style="page-break-after:always;" class="BRPFPageBreak">
        <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

      <div style="width: 100%;" class="BRPFPageHeader">
        <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <div>
      <div>
        <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">TANDY LEATHER FACTORY, INC.</div>

        <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"><!--Anchor--><!--Anchor--><!--Anchor--><a id="NOTES"><!--Anchor--></a>NOTES TO CONSOLIDATED FINANCIAL STATEMENTS</div>

        <div style="text-align: center; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">(UNAUDITED)<br/>
        </div>

        <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>


        <ix:nonNumeric name="us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" id="Text_b31f60fb8f7b413b8381650964e68434" contextRef="c20250101to20250331" escape="true" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea1">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">1.&#160; BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES</div>
</ix:nonNumeric>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea1" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea2" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Tandy Leather Factory, Inc. (&#8220;TLF,&#8221; &#8220;we,&#8221; &#8220;our,&#8221; &#8220;us,&#8221; &#8220;the Company,&#8221; &#8220;Tandy,&#8221; or &#8220;Tandy Leather&#8221; mean Tandy Leather Factory, Inc., together with its subsidiaries)<span style="font-style: italic;"> </span>is one of the world&#8217;s largest specialty retailers of leather and leathercraft-related items. Founded in 1919 in Fort Worth, Texas, the Company introduced leathercrafting to millions of American and later
          Canadian and other international customers and has built a track record as the trusted source of quality leather, tools, hardware, supplies, kits and teaching materials for leatherworkers everywhere. Today, our mission remains to build on our
          legacy of inspiring the timeless art and trade of leatherworking.</div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea3" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea4">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea4" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea5">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">What differentiates Tandy from the competition is our high brand awareness and strong brand equity and loyalty, our network of retail stores that provides
          convenience, a high-touch customer service experience, a hub for the local leathercrafting community, and our 100-year heritage. We believe that this combination of qualities is unique to Tandy and gives the brand competitive advantages that are
          difficult for others to replicate.</div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea5" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea6">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea6" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea7">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We sell our products primarily through company-owned stores, through orders generated from our global websites, <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">and through direct account representatives in our commercial division</span>. We also manufacture leather lace, cut
          leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.&#160; We also offer production services to our business customers such as cutting (&#8220;clicking&#8221;), splitting, and some assembly. We maintain our principal
          offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.</div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea7" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea8">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea8" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea9">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">The Company currently
            operates a total of <ix:nonFraction name="us-gaap:NumberOfStores" id="Fact_4dbd6a8c56e84f27aaa7d32364be2199" contextRef="c20250331" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">101</ix:nonFraction> retail stores as of March 31, 2025.&#160; There are <ix:nonFraction name="us-gaap:NumberOfStores" id="Fact_b4427d9332914dd6b50b3e6115350cef" contextRef="c20250331_StatementGeographicalAxis_US" unitRef="U004" decimals="0" scale="0" format="ixt:num-dot-decimal">91</ix:nonFraction> stores in the United States (&#8220;U.S.&#8221;), <ix:nonFraction name="us-gaap:NumberOfStores" id="Fact_329b8bdb202b49509152578bf3c93313" contextRef="c20250331_StatementGeographicalAxis_CA" unitRef="U004" decimals="INF" scale="0" format="ixt-sec:numwordsen">nine</ix:nonFraction> stores in
            Canada (<ix:nonFraction name="tlfa:NumberOfStoresTemporarilyClosed" id="Fact_5e18285e6dff4f2da10192437b0a79cb" contextRef="c20250331" unitRef="U004" decimals="INF" scale="0" format="ixt:num-dot-decimal">1</ix:nonFraction> was temporarily closed as of March 31, 2025 but has reopened as of our filing date), and <ix:nonFraction name="us-gaap:NumberOfStores" id="Fact_7f89aa4dbea9402c90ea404596e94090" contextRef="c20250331_StatementGeographicalAxis_ES" unitRef="U004" decimals="INF" scale="0" format="ixt-sec:numwordsen">one</ix:nonFraction> store in Spain.</div>
</ix:continuation>
        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea9" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea10">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea10" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea11">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company&#8217;s common shares currently trade on the Nasdaq Capital Market under the symbol &#8220;TLF.&#8221;</div>
</ix:continuation>
        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea11" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea12">
<div><br/>
          </div>
</ix:continuation>
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea12" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea13">
<div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">We operate as a <span style="-sec-ix-hidden:Fact_52110c9064524c4faf89b8b6c0e18590"><span style="-sec-ix-hidden:Fact_31227776067142d8be0cbb10617f0d5d">single</span></span> segment and report on a consolidated basis. The Chief Operating Decision Maker (CODM), which is our CEO, uses both the net sales, cost of
            goods sold and net operating income to assess the Company&#8217;s performance and allocation of resources. All three measures are currently included on the face of our income statement.</div>
</ix:continuation>
        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea13" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea14">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea14" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea15">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">T<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">he accompanying unaudited Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;) for interim financial information and with the
            instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. In the opinion of management, the accompanying unaudited
            Consolidated Financial Statements for Tandy Leather Factory, Inc. and its consolidated subsidiaries contain all adjustments (consisting of normal recurring adjustments) necessary to present fairly our financial position as of March 31, 2025 and
            December 31, 2024, our results of operations and our cash flows for the three months ended March 31, 2025 and 2024, and our statements of stockholders&#8217; equity as of and for the three months ended March 31, 2025 and 2024. The preparation of
            financial statements in accordance with GAAP requires the use of estimates that affect the reported value of assets, liabilities, revenues and expenses. These estimates are based on historical experience and various other factors that are
            believed to be reasonable under the circumstances, the results of which form the basis for the Company&#8217;s conclusions. The Company continually evaluates the information used to make these estimates as the business and the economic environment
            changes. Actual results may differ from these estimates, and estimates are subject to change due to modifications in the underlying conditions or assumptions. These unaudited Consolidated Financial Statements should be read in conjunction with
            the audited Consolidated Financial Statements and accompanying notes included in our Form 10-K for the year ended December 31, 2024</span>.</div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea15" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea16">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div class="BRPFPageFooter" style="width: 100%;"></div>

          <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">8</span></div>

          <div class="BRPFPageBreak" style="page-break-after:always;">
            <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea16" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea17">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Significant Accounting Policies</div>
</ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea17" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea18">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea18" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea19"><ix:nonNumeric name="us-gaap:CashAndCashEquivalentsPolicyTextBlock" id="Text_8f9875ae87af46f3ad28375a68e33c70" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Cash and cash equivalents</span></span>. The Company considers investments with a maturity, at time of purchase, of three months or
          less to be cash equivalents. All credit card, debit card and electronic transfer transactions pending settlement in less than seven days are classified as cash and cash equivalents.</div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea19" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea20">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea20" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea21"><ix:nonNumeric name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="Text_4491e6514c9647dd8ad490c67638839d" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Foreign currency translation and transactions</span></span>. Foreign currency translation adjustments arise from activities of our
          foreign subsidiaries. Results of operations are translated into U.S. dollars using the average exchange rates during the period, while assets and liabilities are translated using period-end exchange rates. Foreign currency translation adjustments
          of assets and liabilities are recorded in stockholders&#8217; equity and presented net of tax. Gains and losses resulting from foreign currency translations are <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">reported in the Consolidated Statements of Operations and Comprehensive Income under the caption &#8220;Foreign currency translation adjustments, net of tax&#8221; for all
            periods presented</span>.</div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea21" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea22">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea22" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea23"><ix:nonNumeric name="us-gaap:RevenueFromContractWithCustomerPolicyTextBlock" id="Text_9b55e5c11e68433da642dfca7d6f9b0e" contextRef="c20250101to20250331" escape="true" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee071">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Revenue Recognition.</span></span>&#160; Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at
          the store, (2) via web sales, and (3) sales of product directly to commercial customers. We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise to a customer. At the store, our performance
          obligation is met and revenue is recognized when a sales transaction occurs with a customer. When merchandise is shipped to a customer, our performance obligation is met, and revenue is recognized when control passes to the customer. Shipping
          terms are normally free on board (&#8220;FOB&#8221;) shipping point, and control passes when the merchandise is shipped to the customer. Sales tax and comparable foreign tax are excluded from net sales, while shipping charged to our customers is included in
          net sales. Net sales are based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.</div>
</ix:nonNumeric></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea23" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea24"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee071" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee072">
<div><br/></div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea24" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea25"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee072" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee073">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">sales return allowance is based each year on historical customer return behavior and other known factors and reduces net sales and cost of sales, accordingly. The sales return allowance included in accrued expense and other
            liabilities was $<ix:nonFraction name="us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" id="Fact_e588f19a4dff44c6a42373882fca3fea" contextRef="c20231231" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" id="Fact_a7af1d7ef92f47918b89624a285ad7d3" contextRef="c20241231" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" id="Fact_edc3ae8b7f3e49b2b1f46a9b503bc2cf" contextRef="c20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction></ix:nonFraction></ix:nonFraction> million as of March 31, 2025, December 31, 2024, and January 1, 2024, respectively. The estimated value of
            merchandise expected to be returned included in other current assets was less than $<ix:nonFraction name="tlfa:InventoryMerchandiseExpectedToBeReturned" id="Fact_b46978e4b6ed4a84b4c16ce1dbf7aa0f" contextRef="c20231231_RangeAxis_MaximumMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="tlfa:InventoryMerchandiseExpectedToBeReturned" id="Fact_0e387c5791f64d6cbde0de0aa9232b75" contextRef="c20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="tlfa:InventoryMerchandiseExpectedToBeReturned" id="Fact_0640becd4f6f4b37a3f28a66bf0edad6" contextRef="c20241231_RangeAxis_MaximumMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction></ix:nonFraction></ix:nonFraction> million as of March 31, 2025, December
            31, 2024, and January 1, 2024</span>, <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">respectively</span>.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea25" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea26"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee073" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee074">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea26" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea27"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee074" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee075">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">record a gift card liability for the unfulfilled performance obligation on the date we issue a gift card to a customer. We record revenue and reduce the gift card liability as the customer redeems the gift card. In addition, for gift
            card breakage, we recognize a proportionate amount for the expected unredeemed gift cards over the expected customer redemption period, which is <ix:nonNumeric name="tlfa:GiftCardRedemptionPeriod" id="Fact_ef6516052a6d4f01b2e9f75cac945a60" contextRef="c20250101to20250331" format="ixt-sec:durwordsen">one year</ix:nonNumeric>. As of March 31, 2025, December 31, 2024, and January 1, 2024, our gift card liability, included in accrued expenses and other liabilities, was $<ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_4cb43a0c98d541a095f1fc447f8a6dd8" contextRef="c20231231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_f34bbbd2a4474b70b21d458e3897f1b7" contextRef="c20241231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:ContractWithCustomerLiability" id="Fact_67bf553c36124eacadd98edc9cedc4a7" contextRef="c20250331_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.3</ix:nonFraction></ix:nonFraction></ix:nonFraction> million, respectively. We recognized gift card revenue of $<ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" id="Fact_57a6cafebb4741ebbfea885f9584c8f9" contextRef="c20240101to20240331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:ContractWithCustomerLiabilityRevenueRecognized" id="Fact_9347ad97939545239d1e49571e1f8d5e" contextRef="c20250101to20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction></ix:nonFraction>
            million for the 3 months ended March 31, 2025 and 2024</span> respectively.</div>
</ix:continuation></ix:continuation>
        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea27" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea28"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee075" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee076">
<div><br/>
          </div>
</ix:continuation></ix:continuation>
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea28" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea29"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee076" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee077">
<div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">For the three
            months ended March 31, 2025 and 2024, we recognized $<ix:nonFraction name="us-gaap:DeferredRevenueRevenueRecognized1" id="Fact_489686723e344c4e8a811046d812dbc0" contextRef="c20240101to20240331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:DeferredRevenueRevenueRecognized1" id="Fact_2598d18a303d422999b3b43105ff1776" contextRef="c20250101to20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction></ix:nonFraction> million in net sales associated with gift cards.</div>
</ix:continuation></ix:continuation>
        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea29" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea30"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee077" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee078">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div class="BRPFPageFooter" style="width: 100%;"></div>

          <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">9</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>

        <!--PROfilePageNumberReset%Num%8%%%-->
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea30" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea31"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee078" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee079">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Disaggregated Revenue.</span>&#160; </span><ix:nonNumeric name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="Text_524e3cd77d3a44d59ea92697a9305aac" contextRef="c20250101to20250331" escape="true" continuedAt="Text_a304961d080d4df39771a3a414556ac41"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:</span></ix:nonNumeric></div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_a304961d080d4df39771a3a414556ac41" continuedAt="Text_a304961d080d4df39771a3a414556ac42"><ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea31" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea32"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee079" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee0710">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation></ix:continuation></ix:continuation>
        <ix:continuation id="Text_a304961d080d4df39771a3a414556ac42"><ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea32" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea33"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee0710" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee0711">
<table cellspacing="0" cellpadding="0" border="0" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;"> </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="6">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended March 31,</div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2025</div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_956048884cb5434fa232deba408d9b23" contextRef="c20250101to20250331_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">16,944</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_e3e91fe185bb4c0e81df961ce1d56a25" contextRef="c20240101to20240331_StatementGeographicalAxis_US" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,085</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; white-space: nowrap;">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Canada</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_04aed1b8acdc49c8972785db54796bd2" contextRef="c20250101to20250331_StatementGeographicalAxis_CA" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,850</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_c404198b35f844f78348ef584b3fea01" contextRef="c20240101to20240331_StatementGeographicalAxis_CA" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,897</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1">Other </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_56b38c0ce01a4861b718209d9e1c4182" contextRef="c20250101to20250331_StatementGeographicalAxis_OtherCountriesMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">242</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_158087bae29a40e8b0ebf0d7f1db7916" contextRef="c20240101to20240331_StatementGeographicalAxis_OtherCountriesMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">293</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net sales</div>
              </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_0a7448285715425db9ee28f8594d4596" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,036</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" colspan="1">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"><ix:nonFraction name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" id="Fact_0c24726870ef41959447464109b8e6c2" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">19,275</ix:nonFraction></div>
              </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea33" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea34"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee0711" continuedAt="Text_fd063e89c4c54e8aa679b311f954ee0712">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea34" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea35"><ix:continuation id="Text_fd063e89c4c54e8aa679b311f954ee0712">
<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;">Geographic sales information is based on the location of the customer. As a percentage of our consolidated net sales, excluding Canada, our
            other international net sales were less than <ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_5bdaaaf3df1c487f8494a6dc95c683fb" contextRef="c20250101to20250331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember" unitRef="U006" decimals="3" scale="-2" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:ConcentrationRiskPercentage1" id="Fact_185da0f431814b059f3e066c3fb08c36" contextRef="c20240101to20240331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember" unitRef="U006" decimals="3" scale="-2" format="ixt:num-dot-decimal">2.0</ix:nonFraction></ix:nonFraction>% for the three months ended March 31, 2025, and 2024, respectively.</div>
</ix:continuation></ix:continuation>

        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea35" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea36">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;"> <br/>
            </span></span></div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea36" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea37"><ix:nonNumeric name="tlfa:RevenueRecognitionDiscountsPolicyTextBlock" id="Text_1ecc096bd5034c9a815f1c27c0a69233" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">Discounts</span></span><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><span style="text-decoration: underline;">.</span> <span style="font-style: normal;">We offer <ix:nonFraction name="tlfa:NumberOfClassesOfCustomerDiscounts" id="Fact_0cef2ad5b343413faf36d23edab778f0" contextRef="c20250101to20250331" unitRef="U007" decimals="INF" scale="0" format="ixt-sec:numwordsen">six</ix:nonFraction> classes of customer discounts: 1) Retail, 2) Military/First Responder, 3) Business, 4) Commercial, 5) Commercial Pro, and 6) Employees. There
              are no other classe of discounts, and any discounts given will fall into one of these <ix:nonFraction name="tlfa:NumberOfClassesOfCustomerDiscounts" id="Fact_7a0b011abe344ff38a9a9f7a4faa5821" contextRef="c20250101to20250331" unitRef="U007" decimals="INF" scale="0" format="ixt-sec:numwordsen">six</ix:nonFraction> categories. Such discounts are not
              deemed to be variable consideration nor convey a material right to these customers since the discounted pricing they receive in a discount class is not incremental to others within the same class and there is no retrospective impact of such
              discounts. As a result, sales are reported after deduction of discounts at the point of sale. We do not pay slotting fees or make other payments to resellers.</span></span></div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea37" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea38">
<div><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea38" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea39"><ix:nonNumeric name="us-gaap:SellingGeneralAndAdministrativeExpensesPolicyTextBlock" id="Text_49fa23af0ba24397bcf2f832ad5e1fac" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Operating</span></span><span style="text-decoration: underline;">&#160;</span><span style="font-style: italic;"><span style="text-decoration: underline;">expense</span></span><span style="text-decoration: underline;">s</span>. Operating expenses include all
          selling, general and administrative costs, including wages and benefits, rent and occupancy costs, depreciation, advertising, store operating expenses, outbound freight charges (to ship merchandise to customers), and corporate office costs.</div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea39" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea40">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea40" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea41"><ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentPolicyTextBlock" id="Text_254677ffca6d42ab96ab85c61048f1f3" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Property and equipment, net of accumulated depreciation</span></span>. Property and equipment are stated at cost. Depreciation is
          computed using the straight-line method over the estimated useful lives of the assets, which are <span style="-sec-ix-hidden:Fact_18e8e79a5c4f4291950fe11f11bc251a">three</span> to <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_af4c6e1a3550462c89836c35cdf2c211" contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">ten years</ix:nonNumeric> for equipment and machinery, <span style="-sec-ix-hidden:Fact_fbfeb37caee54873be8b0a4087eaa022">seven</span>
          to <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_fe9dfa727a014362890d309d6933ea4d" contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember" format="ixt-sec:durwordsen">fifteen years</ix:nonNumeric> for furniture and fixtures, <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_b67a9eeba97c445893d0e1cf43036620" contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_VehiclesMember" format="ixt-sec:durwordsen">five years</ix:nonNumeric> for vehicles, and <ix:nonNumeric name="us-gaap:PropertyPlantAndEquipmentUsefulLife" id="Fact_719984424eb041b7b22f0bd0edbb3c28" contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember" format="ixt-sec:durwordsen">forty years</ix:nonNumeric> for buildings and related improvements. Leasehold
          improvements are amortized over the lesser of the life of the lease or the useful life of the asset. Repairs and maintenance costs are expensed as incurred but are capitalized if&#160; the related cost extends the life of the assets.</div>
</ix:nonNumeric></ix:continuation>
        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea41" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea42">
<div><br/>
          </div>
</ix:continuation>
        </div>


        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea42" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea43"><ix:nonNumeric name="us-gaap:InventoryPolicyTextBlock" id="Text_a368177790cb433bad720854c423e636" contextRef="c20250101to20250331" escape="true" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Inventory</span></span>. Inventory is stated at the lower of first-in, first-out (&#8220;FIFO&#8221;) cost or net realizable value, and FIFO
          layers are maintained at the location level. Finished goods held for sale include the cost of merchandise purchases, the costs to bring the merchandise to our Texas distribution center, warehousing and handling expenditures, and distributing and
          delivering merchandise to our stores. These costs include depreciation of long-lived assets utilized in acquiring, warehousing and distributing inventory. Manufacturing inventory including raw materials and work-in-process is valued on a first
          in, first out basis using full absorption accounting which includes material, labor, and other applicable manufacturing overhead. Carrying values of inventory are analyzed and, to the extent that the cost of inventory exceeds the net realizable
          value, provisions are made to reduce the carrying amount of the inventory.</div>
</ix:nonNumeric></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea43" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea44"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d1" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea44" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea45"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d2" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We regularly review all inventory items to determine if there are (i) damaged goods (e.g., for leather, excessive scars or damage from ultra-violet (&#8220;UV&#8221;) light),
          (ii) items that need to be removed from our product line (e.g., slow-moving items, inability of a supplier to provide items of acceptable quality or quantity, and to maintain freshness in the product line) and (iii) pricing actions that need to
          be taken to adequately value our inventory at the lower of cost or net realizable value.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea45" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea46"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d3" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d4">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div class="BRPFPageFooter" style="width: 100%;"></div>

          <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">10</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea46" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea47"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d4" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d5">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Since the determination of net realizable value of inventory involves both estimation and judgment with regard to market values and reasonable costs to sell,
          differences in these estimates could result in ultimate valuations that differ from the recorded asset.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea47" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea48"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d5" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d6">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea48" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea49"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d6" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d7">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The majority of inventory purchases and commitments are paid for in U.S. dollars in order to limit the Company&#8217;s exposure to foreign currency fluctuations. Goods
          shipped to us are recorded as inventory owned by us when the risk of loss shifts to us from the supplier.<span style="color: rgb(0, 0, 0);"><br/>
          </span></div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea49" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea50"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d7" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d8">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea50" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea51"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d8" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d9"><ix:nonNumeric name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="Text_990ec3ab0bdb4cb283f52a861f1f341f" contextRef="c20250101to20250331" escape="true" continuedAt="Text_c9a4c55412d34053af2712ab3aa8a67e1">
<div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. </div>
</ix:nonNumeric></ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea51" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea52"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d9" continuedAt="Text_fe981b7b8a1f4348b307fc6f2072df1d10"><ix:continuation id="Text_c9a4c55412d34053af2712ab3aa8a67e1" continuedAt="Text_c9a4c55412d34053af2712ab3aa8a67e2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea52" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea53"><ix:continuation id="Text_fe981b7b8a1f4348b307fc6f2072df1d10"><ix:continuation id="Text_c9a4c55412d34053af2712ab3aa8a67e2">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;">(in thousands)</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">March 31, 2025</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">December 31, 2024</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">On hand:</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Finished goods held for sale</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" id="Fact_092cf39fd14b4414bf3f505575b7274d" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">30,433</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);">
                <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InventoryFinishedGoods" id="Fact_b60b0c77c9364ef6b92f6cfd16415e3a" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">31,022</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Raw materials and work in process</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
                <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InventoryWorkInProcessAndRawMaterials" id="Fact_fa717c89225c4535b12abab20c0eaa91" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,251</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;">
                <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:InventoryWorkInProcessAndRawMaterials" id="Fact_300a15b849ca418ab86d554db3a3d68d" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,819</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Inventory in transit</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherInventoryInTransit" id="Fact_924c085dbb6c4bbfadf245774384eca3" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,666</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:OtherInventoryInTransit" id="Fact_454a9cb99a7d47eca16be19571fa461f" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">2,715</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">TOTAL</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_4acadb224ce4479f9f8309176d8b6e87" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">34,350</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);">
                <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:InventoryNet" id="Fact_c02871136ed74093a254ab179b80d368" contextRef="c20241231" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">35,556</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea53" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea54">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea54" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea55"><ix:nonNumeric name="us-gaap:LesseeLeasesPolicyTextBlock" id="Text_901331bdc6cf42a4980504556d7bfd14" contextRef="c20250101to20250331" escape="true" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae61">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-style: italic;">Leases</span></span><span style="font-style: italic;">.</span> We lease real estate for our principal offices (including
          distribution center), retail store locations and may lease warehouse equipment for our Texas distribution center under long-term lease agreements. We determine if an arrangement is a lease at inception and recognize right-of-use (&#8220;ROU&#8221;) assets
          and lease liabilities at commencement date based on the present value of the lease payments over the lease term.<span style="color: rgb(0, 0, 0);"> We elected not to record leases with an initial term of 12 months or less on the balance sheet for
            all our asset classes.</span></div>
</ix:nonNumeric></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea55" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea56"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae61" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae62">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea56" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea57"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae62" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae63">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For operating leases, the present value of our lease liabilities may include: (1) rental payments adjusted for inflation or market rates, and (2) lease terms with
          options to renew the lease or options to purchase leased equipment, when it is reasonably certain we will exercise such an option. The exercise of lease renewal or purchase option is generally at our discretion.&#160; Payments based on a change in an
          index or market rate are not considered in the determination of lease payments for purposes of measuring the related lease liability. We discount lease payments using our incremental borrowing rate based on information available as of the
          measurement date.</div>
</ix:continuation></ix:continuation>
      </div>

      <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea57" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea58"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae63" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae64">
<div><br/></div>
</ix:continuation></ix:continuation>
      <div>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea58" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea59"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae64" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae65">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recognize rent expense related to our <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">operating leases assets on a straight-line basis over the lease term. Rent expense is recorded in operating expenses.<br/>
          </span></div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea59" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea60"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae65" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae66">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea60" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea61"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae66" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae67">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For finance leases, our right-of-use assets are amortized on a straight-line basis over the earlier of the useful life of the right-of-use asset or the end of the
          lease term with rent expense recorded to operating expenses.&#160; We adjust the lease liability to reflect lease payments made during the period and interest incurred on the lease liability using the effective interest method. <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The interest expense incurred is recorded in interest expense on the Consolidated Statements of
            Operations and Comprehensive Income</span>.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea61" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea62"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae67" continuedAt="Text_0ee9ad46e5c944edb0fad0362ad1eae68">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation></ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div class="BRPFPageFooter" style="width: 100%;"></div>

          <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">11</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>

      </div>

      <div>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea62" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea63"><ix:continuation id="Text_0ee9ad46e5c944edb0fad0362ad1eae68">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term. We also perform interim reviews of our lease
          assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. None of our lease agreements contain contingent rental payments, material residual value guarantees or material
          restrictive covenants. We have no sublease agreements and no lease agreements in which we are named as a lessor.</div>
</ix:continuation></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea63" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea64">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea64" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea65"><ix:nonNumeric name="us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" id="Text_ebeff7a2f6b945f89eacb4a31d24eec1" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Impairment of Long-Lived Assets</span></span>. We evaluate long-lived assets on a quarterly basis to identify events or changes in
          circumstances (&#8220;triggering events&#8221;) that indicate the carrying value of certain assets may not be recoverable. Upon the occurrence of a triggering event, ROU lease assets, property and equipment and definite-lived intangible assets are reviewed
          for impairment and an impairment loss is recorded in the period in which it is determined that the carrying amount of the assets is not recoverable. The determination of recoverability is made based upon the estimated undiscounted future net cash
          flows of assets grouped at the lowest level for which there are identifiable cash flows independent of the cash flows of other groups of assets with such cash flows to be realized over the estimated remaining useful life of the primary asset
          within the asset group. The Company determined the lowest level of identifiable cash flows that are independent of other asset groups to be primarily at the individual store level. If the estimated undiscounted future net cash flows for a given
          store are less than the carrying amount of the related store assets, an impairment loss is determined by comparing the estimated fair value with the carrying value of the related assets. The impairment loss is then allocated across the asset
          group&#8217;s major classifications which in this case are operating lease assets and property and equipment. Triggering events at the store level could include material declines in operational and financial performance or planned changes in the use of
          assets, such as store relocation or store closure. This evaluation requires management to make judgements relating to future cash flows, growth rates and economic and market conditions. The fair value of an asset group is estimated using a
          discounted cash flow valuation method.</div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea65" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea66">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea66" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea67"><ix:nonNumeric name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="Text_923b48d0868141ba99975bf649556eaa" contextRef="c20250101to20250331" escape="true" continuedAt="Text_4947378169f44a94959853bac570ba681">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Fair Value of Financial Instruments</span></span>. We measure fair value as an exit price, which is the amount that would be
          received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering such assumptions, accounting standards establish a three-tier fair value hierarchy, which prioritizes the
          inputs used in the valuation methodologies in measuring fair value:</div>
</ix:nonNumeric></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea67" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea68"><ix:continuation id="Text_4947378169f44a94959853bac570ba681" continuedAt="Text_4947378169f44a94959853bac570ba682">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea68" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea69"><ix:continuation id="Text_4947378169f44a94959853bac570ba682" continuedAt="Text_4947378169f44a94959853bac570ba683">
<div>
          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 1 &#8211; observable inputs that reflect quoted prices in active markets for identical assets or liabilities.</div>
                </td>

  </tr>


</table>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea69" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea70"><ix:continuation id="Text_4947378169f44a94959853bac570ba683" continuedAt="Text_4947378169f44a94959853bac570ba684">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea70" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea71"><ix:continuation id="Text_4947378169f44a94959853bac570ba684" continuedAt="Text_4947378169f44a94959853bac570ba685">
<div>
          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 2 &#8211; significant observable inputs other than quoted prices in active markets for similar assets and liabilities, such as quoted prices for identical or similar assets or liabilities in markets that
                    are not active; or other inputs that are observable or can be corroborated by observable market data.</div>
                </td>

  </tr>


</table>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea71" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea72"><ix:continuation id="Text_4947378169f44a94959853bac570ba685" continuedAt="Text_4947378169f44a94959853bac570ba686">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea72" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea73"><ix:continuation id="Text_4947378169f44a94959853bac570ba686" continuedAt="Text_4947378169f44a94959853bac570ba687">
<div>
          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;" class="DSPFListTable">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 3 &#8211; significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.</div>
                </td>

  </tr>


</table>
          <div style="font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
          </div>

        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea73" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea74"><ix:continuation id="Text_4947378169f44a94959853bac570ba687" continuedAt="Text_4947378169f44a94959853bac570ba688">
<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Classification of the financial asset or liability within the hierarchy is
          determined based on the lowest level input that is significant to the fair value measurement. </span></div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea74" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea75"><ix:continuation id="Text_4947378169f44a94959853bac570ba688" continuedAt="Text_4947378169f44a94959853bac570ba689">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea75" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea76"><ix:continuation id="Text_4947378169f44a94959853bac570ba689">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Our principal financial instruments held consist of T-Bills as of March 31, 2025, which fall under level 1 of the fair value hierarchy and accounts receivable -
          trade, accounts payable - <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">trade, which fall under Level 3 of the fair
            value hierarchy</span>. As of March 31, 2025 and December 31, 2024, the carrying values of our financial instruments included in our Consolidated Balance Sheets approximated their fair values. There were <ix:nonFraction name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" id="Fact_648bfa7d3dc74df592a882fd9e3057e4" contextRef="c20240101to20240331" unitRef="U002" decimals="0" scale="0" format="ixt-sec:numwordsen"><ix:nonFraction name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" id="Fact_2300489a5835437688fc15456836266e" contextRef="c20250101to20250331" unitRef="U002" decimals="0" scale="0" format="ixt-sec:numwordsen">no</ix:nonFraction></ix:nonFraction> transfers into or out of Levels 1, 2 and 3 during the three months ended March 31, 2025 and 2024.</div>
</ix:continuation></ix:continuation>

        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea76" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea77">
<div><br/>
          </div>
</ix:continuation>

        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea77" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea78"><ix:nonNumeric name="us-gaap:IncomeTaxPolicyTextBlock" id="Text_f7d697c35bd24078803a3f7d6ab1f36c" contextRef="c20250101to20250331" escape="true" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Income Taxes</span></span>. Income taxes are estimated for each jurisdiction in which we operate. This involves assessing current
          tax exposure together with temporary differences resulting from differing treatment of items for tax and financial statement accounting purposes. Any resulting deferred tax assets are evaluated for recoverability based on estimated future taxable
          income. To the extent it is more-likely-than-not that all or a portion of a deferred tax asset will not be realized, a valuation allowance is recorded. Our evaluation regarding whether a valuation allowance is required or should be adjusted also
          considers, among other things, the nature, frequency, and severity of recent losses, forecasts of future profitability and the duration of statutory carryforward periods.</div>
</ix:nonNumeric></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea78" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea79"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d1" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div class="BRPFPageFooter" style="width: 100%;"></div>

          <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">12</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea79" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea80"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d2" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The
          effect on deferred taxes from a change in tax rate is recognized through continuing operations in the period that includes the enactment date of the change. Changes in tax laws and rates could affect recorded deferred tax assets and liabilities
          in the future.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea80" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea81"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d3" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d4">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea81" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea82"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d4" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d5">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">A tax benefit from an uncertain tax position may be recognized when it is more-likely-than-not that the position will be sustained upon examination, including
          resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more-likely-than-not recognition threshold to be recognized.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea82" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea83"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d5" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d6">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea83" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea84"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d6" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d7">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not
          previously available. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as
          increases or decreases to income tax expense and the effective tax rate in the period in which new information becomes available. We recognize interest and/or penalties related to all tax positions in income tax expense. To the extent that
          accrued interest and penalties do not ultimately become payable, amounts accrued will be reduced and reflected as a reduction of the overall income tax provision in the period that such determination is made.</div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea84" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea85"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d7" continuedAt="Text_7d840e9a52bf44a4be04028338547a2d8">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation></ix:continuation>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea85" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea86"><ix:continuation id="Text_7d840e9a52bf44a4be04028338547a2d8">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We may be subject to periodic audits by the Internal Revenue Service and other taxing authorities. These audits may challenge certain of our tax positions, such as
          the timing and amount of deductions and allocation of taxable income to the various jurisdictions.</div>
</ix:continuation></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea86" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea87">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea87" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea88"><ix:nonNumeric name="us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy" id="Text_8aa5b4b234694e06aa16da119be56771" contextRef="c20250101to20250331" escape="true" continuedAt="Text_3c4596dd5fd14b9b9c16a82f689502121">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Stock-based compensation</span></span>. The Company&#8217;s stock-based compensation relates primarily to restricted stock unit (&#8220;RSU&#8221;)
          awards. Accounting guidance requires measurement and recognition of compensation expense at an amount equal to the grant date fair value. Compensation expense is recognized for service-based stock awards on a straight-line basis or ratably over
          the requisite service period, based on the closing price of the Company&#8217;s stock on the date of grant. The service-based awards typically vest ratably over the requisite service period, provided that the participant is employed on the vesting
          date. Compensation expense is reduced by actual forfeitures as they occur over the requisite service period of the awards.</div>
</ix:nonNumeric></ix:continuation>
      </div>

      <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea88" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea89"><ix:continuation id="Text_3c4596dd5fd14b9b9c16a82f689502121" continuedAt="Text_3c4596dd5fd14b9b9c16a82f689502122">
<div><br/></div>
</ix:continuation></ix:continuation>
      <div>
        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea89" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea90"><ix:continuation id="Text_3c4596dd5fd14b9b9c16a82f689502122">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Performance-based RSUs vest, if at all, upon the Company satisfying certain performance targets. The Company records compensation expense for awards with a
          performance condition when it is probable that the condition will be achieved. If the Company determines it is not probable a performance condition will be achieved, no compensation expense is recognized. If the Company changes its assessment in
          a subsequent period and concludes it is probable a performance condition will be achieved, the Company will recognize compensation expense ratably between the period of the change in assessment through the expected date of satisfying the
          performance condition for vesting. If the Company subsequently assesses that it is no longer probable that a performance condition will be achieved, the accumulated expense that has been previously recognized will be reversed. The compensation
          expense ultimately recognized, if any, related to performance-based awards will equal the grant date fair value based on the number of shares for which the performance condition has been satisfied. We issue shares from authorized shares upon the
          lapsing of vesting restrictions on RSUs. We do not use cash to settle equity instruments issued under stock-based compensation awards. <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The payments of the employees&#8217; tax liability for a portion of the vested shares are generally satisfied by withholding shares with a fair value equal to the tax
            liability</span>.</div>
</ix:continuation></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea90" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea91">
<div><br/>
        </div>
</ix:continuation>
        <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
          <div class="BRPFPageFooter" style="width: 100%;"></div>

          <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">13</span></div>

          <div class="BRPFPageBreak" style="page-break-after: always;">
            <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

          <div class="BRPFPageHeader" style="width: 100%;">
            <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
            </div>

          </div>

        </div>


        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea91" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea92"><ix:nonNumeric name="us-gaap:CreditLossFinancialInstrumentPolicyTextBlock" id="Text_0fe8693fd2474d8facae9f57264b2a65" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Accounts Receivable - Trade and Expected Credit Losses</span></span>. Our receivables primarily arise from the sale of merchandise
          to customers that have applied for and been granted credit. Accounts receivable are stated at amounts due, net of an allowance. Accounts receivable are generally due within 30 days of invoicing. We estimate expected credit losses based on factors
          such as the composition of accounts receivable, the age of the accounts, historical bad debt experience, and our evaluation of the financial condition and past collection history of each customer. Management believes that the historical loss
          information it has compiled is a reasonable base on which to determine expected credit losses for trade receivables held at March 31, 2025, because the composition of the trade receivables at that date is consistent with that used in developing
          the historical credit-loss percentages (i.e., the similar risk characteristics of its customers and its credit practices have not changed significantly over time). Accordingly, the allowance for expected credit losses at March 31, 2025, December
          31, 2024, and January 1, 2024 each totaled less than $<ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" id="Fact_e45edc655ba54bdeba08b76de2545f7f" contextRef="c20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" id="Fact_b7cf416ebba3458eb8ceabb1e8a2f10f" contextRef="c20231231" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:AllowanceForDoubtfulAccountsReceivable" id="Fact_2e5c71bada084afcb5211221c56476d1" contextRef="c20241231" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction></ix:nonFraction></ix:nonFraction> million.</div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea92" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea93">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea93" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea94"><ix:nonNumeric name="us-gaap:IntangibleAssetsFiniteLivedPolicy" id="Text_aea61aea53a244ec8ec68e52e0ab7446" contextRef="c20250101to20250331" escape="true">
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"><span style="font-style: italic;"><span style="text-decoration: underline;">Other Intangible Assets</span></span>. Our intangible assets and related accumulated amortization relate to trademarks and
          copyrights that are definite-lived intangibles and are subject to amortization. The weighted average amortization period is <ix:nonNumeric name="us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" id="Fact_e563d590d911419499514399452cd132" contextRef="c20250101to20250331_FiniteLivedIntangibleAssetsByMajorClassAxis_IntellectualPropertyMember" format="ixt-sec:duryear">15</ix:nonNumeric> years
          for trademarks and copyrights. Amortization expense related to other intangible assets was less than $<ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" id="Fact_82a6149adb8648c19f71ab42db1b6342" contextRef="c20250101to20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:AmortizationOfIntangibleAssets" id="Fact_50b4f307aeff4e46a2f0e47a5ff146da" contextRef="c20240101to20240331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction> million during each of
          the 3 months ended March 31, 2025 and 2024. Based on the current amount of intangible assets subject to amortization, we estimate amortization expense to be less than $<ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" id="Fact_a6061e7b6d114e87b70d8c13c2fce522" contextRef="c20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" id="Fact_8ecc01205fa640079ab8c9b910edbc12" contextRef="c20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" id="Fact_245ffd00be9643ecb54ddaaf68c9febd" contextRef="c20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" id="Fact_1d60e6d74fd347a2a4a028a886729fe6" contextRef="c20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal"><ix:nonFraction name="us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" id="Fact_1b68145a01fd43a5b38509598e5852d8" contextRef="c20250331_RangeAxis_MaximumMember" unitRef="U002" decimals="-4" scale="6" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> million annually over the next five years.<br/>
        </div>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea94" continuedAt="Text_6e73f5640a704dc58d61c3c2187a58ea95">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_6e73f5640a704dc58d61c3c2187a58ea95"><ix:nonNumeric name="us-gaap:ComprehensiveIncomePolicyPolicyTextBlock" id="Text_1682801bb78b4ace8c5f2da74931a983" contextRef="c20250101to20250331" escape="true">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Comprehensive Income</span></span>. Comprehensive income includes net income or loss and certain other items that are recorded
          directly to stockholders&#8217; equity. The Company&#8217;s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.</div>
</ix:nonNumeric></ix:continuation>

        <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <ix:nonNumeric name="us-gaap:DebtDisclosureTextBlock" id="Text_14113390f38048bf8021bb74c82d2345" contextRef="c20250101to20250331" escape="true" continuedAt="Text_c0ba48c9980942209ea22e688043a7bd1">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">2. NOTES PAYABLE AND LONG-TERM DEBT</div>
</ix:nonNumeric>
      <ix:continuation id="Text_c0ba48c9980942209ea22e688043a7bd1" continuedAt="Text_c0ba48c9980942209ea22e688043a7bd2">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_c0ba48c9980942209ea22e688043a7bd2" continuedAt="Text_c0ba48c9980942209ea22e688043a7bd3">
<div style="text-align: justify;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">On
          January 3, 2023, the Company entered into a credit agreement (the &#8220;Credit Agreement&#8221;) with JPMorgan Chase Bank, N.A. Under the Credit Agreement, the bank provides the Company a credit facility of up to $<ix:nonFraction name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" id="Fact_26ed3ad965dd437ba8f4f0487c9968ce" contextRef="c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">5,000,000</ix:nonFraction> on standard terms and conditions, including affirmative and negative covenants set forth in the Credit Agreement.&#160; As security for the credit facility, the Company
          has pledged, as collateral, certain of its assets, including the Company&#8217;s cash in deposit accounts, inventory and equipment. The interest rate is based on CME term <span style="-sec-ix-hidden:Fact_b5db66dcfea64781bc8c2674442dccb3">SOFR</span> + <span style="-sec-ix-hidden:Fact_dec83329e0ed457cae86bd2da01523fc">210</span> basis points, and the maturity is <ix:nonNumeric name="us-gaap:DebtInstrumentTerm" id="Fact_6e2b01148b75488d96406b0d914703df" contextRef="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember" format="ixt-sec:durwordsen">1 year</ix:nonNumeric>.&#160; As of the date of this filing, <ix:nonFraction name="us-gaap:ProceedsFromLinesOfCredit" id="Fact_b38595d293384a099edcca191d5dd0ec" contextRef="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember" unitRef="U002" decimals="0" scale="0" format="ixt-sec:numwordsen">no</ix:nonFraction>
          funds had been borrowed under this facility, and we are in compliance with all covenants.</span></div>
</ix:continuation>
      <div style="text-align: justify;">
        <ix:continuation id="Text_c0ba48c9980942209ea22e688043a7bd3" continuedAt="Text_c0ba48c9980942209ea22e688043a7bd4">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_c0ba48c9980942209ea22e688043a7bd4">
<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In the fourth quarter of 2024, the Company renewed the promissory note under its Credit Agreement with JPMorgan Chase Bank, N.A. through October 31, 2025 under the same terms as above. </span> </div>
</ix:continuation>

        <div><br/>
        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <ix:nonNumeric name="us-gaap:IncomeTaxDisclosureTextBlock" id="Text_4562bace87dd40deb127034024eac5af" contextRef="c20250101to20250331" escape="true" continuedAt="Text_510b7f711c824b7db57612f323fd7d0c1">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">3.&#160; INCOME TAX</div>
</ix:nonNumeric>
      <ix:continuation id="Text_510b7f711c824b7db57612f323fd7d0c1" continuedAt="Text_510b7f711c824b7db57612f323fd7d0c2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_510b7f711c824b7db57612f323fd7d0c2">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Our effective tax rate for the three months ended March 31, 2025 and 2024 was <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_6bda7e88362c4f9dafa015fc0ee9da61" contextRef="c20250101to20250331" unitRef="U006" decimals="3" scale="-2" format="ixt:num-dot-decimal">24.8</ix:nonFraction>% and <ix:nonFraction name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" id="Fact_c80e028f70b94d56a3f8d18ebf5b7910" contextRef="c20240101to20240331" unitRef="U006" decimals="3" scale="-2" format="ixt:num-dot-decimal">25.7</ix:nonFraction>%, respectively. Our effective tax rate differs from the federal
        statutory rate primarily due to U.S. state income tax expense, expenses that are nondeductible for tax purposes, the change in our valuation allowance associated with our deferred tax assets, and differences in tax rates in foreign jurisdictions.</div>
</ix:continuation>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div class="BRPFPageFooter" style="width: 100%;"></div>

        <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">14</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div style="width: 100%;" class="BRPFPageHeader">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <ix:nonNumeric name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="Text_ed7e3c7e3c5b4e58997921a98d4673d6" contextRef="c20250101to20250331" escape="true" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad71">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">4.&#160; STOCK-BASED COMPENSATION</div>
</ix:nonNumeric>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad71" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad72">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad72" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad73">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Tandy Leather Factory, Inc. 2013 Restricted Stock Plan (the &#8220;2013 Plan&#8221;) was adopted by our Board of Directors in January 2013 and approved by our stockholders in
        June 2013. The 2013 Plan initially reserved up to <ix:nonFraction name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" id="Fact_e0670a3cee7048bc8272c5c482eadb74" contextRef="c20130131_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember_RangeAxis_MaximumMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">300,000</ix:nonFraction> shares for restricted stock and restricted stock unit (&#8220;RSU&#8221;) awards to our
        executive officers, non-employee directors and other key employees. In June 2020, our stockholders approved an increase to the plan reserve to <ix:nonFraction name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" id="Fact_b42e0a32b2254f7ca0dba7fc5f0d423b" contextRef="c20200630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">800,000</ix:nonFraction>
        shares of our common stock and extended the 2013 Plan to June 2023. Awards granted under the 2013 Plan may be service-based awards or performance-based awards and may be subject to a graded vesting schedule with a minimum vesting period of <ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_93f0c385386b4f91b0c3c2e77b1ef095" contextRef="c20250101to20250331_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MinimumMember" format="ixt-sec:durwordsen">four years</ix:nonNumeric>, unless otherwise determined by the Compensation Committee of the Board of Directors that administers the plan. All shares remaining
        ungranted under the 2013 Plan were canceled upon the adoption of the new 2023 Plan described below.<br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad73" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad74">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>
</ix:continuation>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
        <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad74" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad75">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Tandy Leather Factory, Inc. 2023 Incentive Stock Plan (the &#8220;2023 Plan&#8221; and, together with the 2013 Plan, the &#8220;Plans&#8221;) was adopted by our Board of Directors in
          April 2023 and approved by our stockholders in June 2023.&#160; The 2023 Plan initially reserved up to <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" id="Fact_0feb2f6189bc47f6be969e4c2ebfcc38" contextRef="c20230430_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MaximumMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">800,000</ix:nonFraction></span> shares of our common stock for a variety of equity
          awards (including, but not limited to, RSUs, the only type of awards that have been granted to date) to our executive officers, non-employee directors and other key employees.&#160; In June 2023, as part of their annual director compensation, certain
          of our non-employee directors were granted a total of <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_f0f72bf6b83a4f528d49941f761b6837" contextRef="c20230601to20230630_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">12,993</ix:nonFraction></span> service-based RSUs under the 2023 Plan, which will vest ratably over the next <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_f0db0518886f4f3ba9d40ce00f186a97" contextRef="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember" format="ixt-sec:durwordsen">four years</ix:nonNumeric></span>, subject to each participant&#8217;s continued service on the board as of each vesting date.&#160; In March 2024, the Company granted to certain employees a total of
          <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_bf114a9ee29a49f39d2b2098949e05cb" contextRef="c20240301to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">59,649</ix:nonFraction></span> RSUs under the 2023 Plan, which will vest ratably over the next <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_86de1d3b405b42428292ab55435f7043" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember" format="ixt-sec:durwordsen">three years</ix:nonNumeric></span>, subject to the recipients&#8217; continued employment as of each vesting date. In June 2024, the Company granted <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_b833c72088db45f1bb8a3cdd9ac27828" contextRef="c20240601to20240630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">14,000</ix:nonFraction></span>
          shares to various members of the Board of Directors, which will vest ratably over the next <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"><ix:nonNumeric name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" id="Fact_e08fdacbd65a40cfa8cdd96d093f5c44" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember" format="ixt-sec:durwordsen">four years</ix:nonNumeric></span>, subject to each participant&#8217;s continued service on the board
          as of each vesting date.</div>
</ix:continuation>
      </div>

      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad75" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad76">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>

      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
        <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad76" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad77"><ix:nonNumeric name="us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" id="Text_ba59d5c9e89f4478bb3b5e03117d2574" contextRef="c20250101to20250331" escape="true" continuedAt="Text_d931d92a124042a3a9d779cea4913cfe1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">A summary of the activity for restricted stock and RSU awards as of March 31, 2025 is presented below:</div>
</ix:nonNumeric></ix:continuation>
      </div>

      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad77" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad78"><ix:continuation id="Text_d931d92a124042a3a9d779cea4913cfe1" continuedAt="Text_d931d92a124042a3a9d779cea4913cfe2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad78" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad79"><ix:continuation id="Text_d931d92a124042a3a9d779cea4913cfe2" continuedAt="Text_d931d92a124042a3a9d779cea4913cfe3">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Shares</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> (in thousands)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; padding-bottom: 2px;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Weighted Average </div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Share Price</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Balance, January 1, 2025</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_2ee805f2763442c2a14d4d35b4520d6d" contextRef="c20241231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">409</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" id="Fact_0bd081a0d6fe4ae5b3b30d4f2db55910" contextRef="c20241231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">4.32</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Granted<sup>(1)</sup></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" id="Fact_0e2f76ca8f8a4dd3855c17ba90c36408" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1000</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" id="Fact_d03490cb70344061a8a0d00416a40a4b" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">4.61</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Forfeited</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" id="Fact_d4e82661b4b942c3aba8c0ab9303aaa6" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">308</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" id="Fact_84fef0d3378540bd8be1b05b4760f617" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">4.26</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Vested</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">(<ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" id="Fact_4966533097394481bf8fb92d21b39b07" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">16</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" id="Fact_a05eb7b478bc4dd8b60e1a3bba20fa19" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">4.36</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Balance, <span style="text-indent: 0pt;">March 31</span>, 2025</div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" id="Fact_894cc1f296d04bddb4218f18ddf2babf" contextRef="c20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U001" decimals="-3" scale="3" format="ixt:num-dot-decimal">1,085</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" id="Fact_f2dd8caab8f74be987d58595a01ae44f" contextRef="c20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">4.01</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad79" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad710"><ix:continuation id="Text_d931d92a124042a3a9d779cea4913cfe3" continuedAt="Text_d931d92a124042a3a9d779cea4913cfe4">
<div> <br/>
      </div>
</ix:continuation></ix:continuation>
      <div>
        <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad710" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad711"><ix:continuation id="Text_d931d92a124042a3a9d779cea4913cfe4">
<div>
          <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;" class="DSPFListTable">


  <tr>

    <td style="width: 22.5pt; vertical-align: top; text-align: left;"><sup>(1)</sup><br/>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><ix:footnote id="Foot_014120d6f7a840db89bc9773e88e6d8a" footnoteRole="http://www.xbrl.org/2003/role/footnote" xml:lang="en-US">Grant of <ix:nonFraction name="tlfa:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" id="Fact_3e0ebf340c3f49cba1aedc327e5fca55" contextRef="c20250101to20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">900,000</ix:nonFraction> shares pending approval of the Company&#8217;s stockholders at the 2025 annual meeting.</ix:footnote></div>
                </td>

  </tr>


</table>
        </div>
</ix:continuation></ix:continuation>
      </div>


      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad711" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad712">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad712" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad713">
<div style="text-align: justify;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The
          Company&#8217;s stock-based compensation relates primarily to RSU awards. For these service-based awards, our stock-based compensation expense, included in operating expenses, was $<ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_5ab002b6ab7340df856627cb929f9f62" contextRef="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.1</ix:nonFraction> million and $<ix:nonFraction name="us-gaap:AllocatedShareBasedCompensationExpense" id="Fact_a5330258f160487e98f5964c859fdcff" contextRef="c20240101to20240331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.2</ix:nonFraction> million for the three months ended March 31, 2025 and
          March 31, 2024 respectively. </span></div>
</ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad713" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad714">
<div style="text-align: justify;"><br/>
      </div>
</ix:continuation>
      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="width: 100%;" class="BRPFPageFooter"></div>

        <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">15</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>


      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad714" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad715"><ix:nonNumeric name="us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" id="Text_b39d00721926460fb096054641622688" contextRef="c20250101to20250331" escape="true" continuedAt="Text_d8e13db9e1704606aeda476fa6b59b1c1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">As of March 31, 2025, there was unrecognized compensation cost related to non-vested, RSU awards of $<ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" id="Fact_c3a980709a8a458497228b92c0d9b165" contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">0.6</ix:nonFraction> million, which will be recognized in each of the following years (dollars in thousands):</div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad715" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad716"><ix:continuation id="Text_d8e13db9e1704606aeda476fa6b59b1c1" continuedAt="Text_d8e13db9e1704606aeda476fa6b59b1c2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad716" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad717"><ix:continuation id="Text_d8e13db9e1704606aeda476fa6b59b1c2">
<table cellspacing="0" cellpadding="0" border="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic; text-align: center;"><span style="font-style: normal; font-weight: bold;">Unrecognized Expense</span><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;">2025<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">$ <br/>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="tlfa:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" id="Fact_937311f56bf74a5295527771b5755f7b" contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">399</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 88%; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;">2026<br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" id="Fact_02ad1740defa4e2a8c97ea72fcf604ce" contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">185</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;">2027<br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;"><ix:nonFraction name="tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" id="Fact_0dd712f9bded4523bbcec5b6f1338efc" contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">34</ix:nonFraction><br/>
            </td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; padding-bottom: 2px; white-space: nowrap;">2028</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;"><ix:nonFraction name="tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" id="Fact_427ef7161c6b448aaabd716b4ed15899" contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">5</ix:nonFraction></td>

    <td valign="bottom" colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; text-align: left; width: 88%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"><br/>
              </div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td valign="bottom" colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;">
              <div style="color: rgb(0, 0, 0); font-weight: bold;"><ix:nonFraction name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" id="Fact_9533b6ce56a548cebf2ed027e249aac5" contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">623</ix:nonFraction></div>
            </td>

    <td valign="bottom" colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad717" continuedAt="Text_3c1651028c1349d2bca35fb909f8dad718">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_3c1651028c1349d2bca35fb909f8dad718">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We issue shares from authorized shares upon the lapsing of vesting restrictions on restricted stock and RSUs. For the three months ended March 31, 2025 and 2024, we
        issued <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" id="Fact_a09e4c97a08445769eb85654cc79de13" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">15,973</ix:nonFraction> and <ix:nonFraction name="us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross" id="Fact_acc7cdb370664fe892ca61f5724c6e85" contextRef="c20240101to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">2,727</ix:nonFraction>
        shares, respectively, resulting from the vesting of RSUs.&#160; We do not use cash to settle equity instruments issued under stock-based compensation awards.<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;">&#160;</span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">The payment of the employees&#8217; tax liability for a portion of the vested shares may be satisfied by withholding shares with a fair value equal
          to the tax liability.</span></div>
</ix:continuation>

      <div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <ix:nonNumeric name="us-gaap:EarningsPerShareTextBlock" id="Text_c57b479b59374378990b712e214cfea3" contextRef="c20250101to20250331" escape="true" continuedAt="Text_f2a24960e4294b9b87945d36164d57f51">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">5.&#160; EARNINGS PER SHARE</div>
</ix:nonNumeric>
      <ix:continuation id="Text_f2a24960e4294b9b87945d36164d57f51" continuedAt="Text_f2a24960e4294b9b87945d36164d57f52">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>
      <ix:continuation id="Text_f2a24960e4294b9b87945d36164d57f52" continuedAt="Text_f2a24960e4294b9b87945d36164d57f53">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Basic earnings per share (&#8220;EPS&#8221;) are computed based on the weighted average number of common shares outstanding during the period. Diluted EPS includes additional
        common shares that would have been outstanding if potential common shares with a dilutive effect, such as stock awards from the Company&#8217;s restricted stock plan, had been issued.&#160; Anti-dilutive securities represent potentially dilutive securities
        which are excluded from the computation of diluted EPS as their impact would be anti-dilutive.&#160; Diluted EPS is computed using the treasury stock method.</div>
</ix:continuation>
      <ix:continuation id="Text_f2a24960e4294b9b87945d36164d57f53" continuedAt="Text_f2a24960e4294b9b87945d36164d57f54">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation>

      <ix:continuation id="Text_f2a24960e4294b9b87945d36164d57f54" continuedAt="Text_f2a24960e4294b9b87945d36164d57f55"><ix:nonNumeric name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="Text_1e53a64eefa24f2c9817a9b37d701a7c" contextRef="c20250101to20250331" escape="true" continuedAt="Text_61a62e1ce77b4ca5a093ba674cf58a391">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following table sets forth the computation of basic and diluted EPS for the three months ended March 31, 2025 and 2024:</div>
</ix:nonNumeric></ix:continuation>
      <ix:continuation id="Text_f2a24960e4294b9b87945d36164d57f55" continuedAt="Text_f2a24960e4294b9b87945d36164d57f56"><ix:continuation id="Text_61a62e1ce77b4ca5a093ba674cf58a391" continuedAt="Text_61a62e1ce77b4ca5a093ba674cf58a392">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>
</ix:continuation></ix:continuation>
      <ix:continuation id="Text_f2a24960e4294b9b87945d36164d57f56"><ix:continuation id="Text_61a62e1ce77b4ca5a093ba674cf58a392">
<table cellspacing="0" cellpadding="0" border="0" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"><br/>
              </div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="6">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Three Months Ended March 31,</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;"><span style="font-style: italic;">(in thousands, except share data)</span> <br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2025</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" colspan="2">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2024</div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right;" rowspan="1" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right;" rowspan="1" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-weight: bold;" rowspan="1">Numerator:</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right;" rowspan="1" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right;" rowspan="1" colspan="2">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Net income<br/>
              </div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_be713568d8ed453691dd1940440e987b" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">12,676</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="color: rgb(0, 0, 0);"></div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" colspan="1">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:NetIncomeLoss" id="Fact_0b91a449425b4f10a417ef52bdaecb9b" contextRef="c20240101to20240331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">525</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Denominator:</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Basic weighted-average common shares outstanding</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_651ae5caa4e44a61a75064b0557e3797" contextRef="c20250101to20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,501,204</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" id="Fact_75c3b36a6c1b45598e6bdc8d4527e5b0" contextRef="c20240101to20240331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,400,354</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 76%;" rowspan="1">
              <div style="margin-top: 0px; margin-bottom: 0px; text-align: left; text-indent: 9pt;">Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_1919d62914cf4c32a3fcdf611b78fb30" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">9,460</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_a5a4154de1844515a40a6e256cda1b66" contextRef="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">5,108</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" rowspan="1">Dilutive effect of service-based restricted stock awards granted to employees under the Plan<br/>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_0724c696941b442eb1f4be736ba59c83" contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">84,656</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" id="Fact_4b438c02a6a24dddbf14188c83ca47cb" contextRef="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">94,892</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Diluted weighted-average common shares outstanding</div>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_937e0d1f0a4647b9811d52a76c784156" contextRef="c20250101to20250331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,595,320</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" colspan="1">
              <div style="color: rgb(0, 0, 0);"><ix:nonFraction name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" id="Fact_86a8c8d1d8e94a2d9d09f782fa00471d" contextRef="c20240101to20240331" unitRef="U001" decimals="0" scale="0" format="ixt:num-dot-decimal">8,500,354</ix:nonFraction></div>
            </td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" colspan="1" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" rowspan="1">Basic earnings per share <br/>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" rowspan="1" colspan="1"><br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_5be4985f521d470ca4e14a3c94b04364" contextRef="c20250101to20250331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.49</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1"/>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" rowspan="1" colspan="1"><br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:EarningsPerShareBasic" id="Fact_42cc26f6eb504412a9f1bee243c56854" contextRef="c20240101to20240331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.06</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" rowspan="1">Diluted earnings per share<br/>
            </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1"><br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_86ef86afd4954529bcd18155b8938297" contextRef="c20250101to20250331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">1.47</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1"/>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1"><br/>
            </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1"><ix:nonFraction name="us-gaap:EarningsPerShareDiluted" id="Fact_dd7a0fd8d59b4f2cafd7234c5b74bbae" contextRef="c20240101to20240331" unitRef="U003" decimals="2" scale="0" format="ixt:num-dot-decimal">0.06</ix:nonFraction></td>

    <td valign="bottom" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" rowspan="1" colspan="1">&#160;</td>

  </tr>


</table>
</ix:continuation></ix:continuation>

      <div><br/>
      </div>

      <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
        <div style="width: 100%;" class="BRPFPageFooter"></div>

        <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">16</span></div>

        <div style="page-break-after: always;" class="BRPFPageBreak">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

      <div> <br/>
      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <!--PROfilePageNumberReset%Num%15%%%-->
    <div>
      <div>
        <ix:nonNumeric name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="Text_7489146fd61c4f6eaee00c250001f24a" contextRef="c20250101to20250331" escape="true" continuedAt="Text_38e61cb45a434db9b543e9909370b6601">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">6.&#160; COMMITMENTS AND CONTINGENCIES</div>
</ix:nonNumeric>
        <ix:continuation id="Text_38e61cb45a434db9b543e9909370b6601" continuedAt="Text_38e61cb45a434db9b543e9909370b6602">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_38e61cb45a434db9b543e9909370b6602" continuedAt="Text_38e61cb45a434db9b543e9909370b6603">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Legal Proceedings</div>
</ix:continuation>
        <ix:continuation id="Text_38e61cb45a434db9b543e9909370b6603" continuedAt="Text_38e61cb45a434db9b543e9909370b6604">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_38e61cb45a434db9b543e9909370b6604">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are periodically involved in litigation that arises in the ordinary course of business and operations. There are no such matters pending that we expect to have a
          material impact on our financial position or operating results. Legal costs associated with the resolution of claims, lawsuits and other contingencies are expensed as incurred.</div>
</ix:continuation>

        <div><br/>
        </div>

      </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <!--PROfilePageNumberReset%Num%16%%%-->
    <div>
      <div>
        <ix:nonNumeric name="tlfa:ShareRepurchaseProgramAndShareRepurchasesTextBlock" id="Text_a41e88e2bd524f47863e75928f9c401f" contextRef="c20250101to20250331" escape="true" continuedAt="Text_324e7c59a86f4369be3a5a9b58f7132a1">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">7.&#160; SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</div>
</ix:nonNumeric>
        <ix:continuation id="Text_324e7c59a86f4369be3a5a9b58f7132a1" continuedAt="Text_324e7c59a86f4369be3a5a9b58f7132a2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_324e7c59a86f4369be3a5a9b58f7132a2" continuedAt="Text_324e7c59a86f4369be3a5a9b58f7132a3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On August 8, 2022, the Board of Directors approved a new program to repurchase up to $<ix:nonFraction name="srt:StockRepurchaseProgramAuthorizedAmount1" id="Fact_e99e2d6bcf924568bb42eb9e4f9e45cb" contextRef="c20220808_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">5.0</ix:nonFraction> million of the Company&#8217;s common stock between that date and August 31, 2024.&#160; As of August 31, 2024, the Company had purchased less than $<ix:nonFraction name="us-gaap:TreasuryStockCommonValue" id="Fact_cbe92eb477ac4b4c930879b3c8b78c2d" contextRef="c20240831_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember" unitRef="U002" decimals="0" scale="0" format="ixt:num-dot-decimal">10,000</ix:nonFraction> of shares under this plan. <br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_324e7c59a86f4369be3a5a9b58f7132a3" continuedAt="Text_324e7c59a86f4369be3a5a9b58f7132a4">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>
</ix:continuation>
        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_324e7c59a86f4369be3a5a9b58f7132a4">
<div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">On September 17, 2024, the Board of Directors approved&#160;the renewal of the stock repurchase plan and the Company was authorized to repurchase up to $<ix:nonFraction name="srt:StockRepurchaseProgramAuthorizedAmount1" id="Fact_6c58bd11595a425f991536cbe405304d" contextRef="c20240917_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember" unitRef="U002" decimals="-6" scale="6" format="ixt:num-dot-decimal">5</ix:nonFraction> million (at then-current market value) of the Company&#8217;s common stock in open-market transactions at prevailing market prices upon periodic instructions from the Board
              or an authorized sub-committee of the Board until September 30, 2026. As of March 31, 2025, $<ix:nonFraction name="us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" id="Fact_5f9821b3829146378e5de055d72f676b" contextRef="c20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">5.0</ix:nonFraction> million remained available for
              repurchase under this new program.</span></div>
</ix:continuation>
        </div>


        <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

        <!--PROfilePageNumberReset%Num%19%%%--> </div>

    </div>

  </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0);">
    <!--PROfilePageNumberReset%Num%16%%%--> <div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

    <div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">
        <ix:nonNumeric name="tlfa:SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" id="Text_f107657ef997426c9fe667698cd3442b" contextRef="c20250101to20250331" escape="true" continuedAt="Text_45a5ca35f1004433b0943094c0def31f1">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">8. SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</div>
</ix:nonNumeric>
        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f1" continuedAt="Text_45a5ca35f1004433b0943094c0def31f2">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f2" continuedAt="Text_45a5ca35f1004433b0943094c0def31f3">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company concluded the sale of our corporate headquarters, and the net proceeds of the sale is recorded on the face of our consolidated statements of operations
          and comprehensive income as Gain on disposal of Headquarter.</div>
</ix:continuation>
        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f3" continuedAt="Text_45a5ca35f1004433b0943094c0def31f4">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f4" continuedAt="Text_45a5ca35f1004433b0943094c0def31f5">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">On January 22, 2025, the Company finalized the sale of its corporate headquarters and distribution
            facilities in Fort Worth, Texas for net proceeds of $<ix:nonFraction name="us-gaap:ProceedsFromSaleOfProductiveAssets" id="Fact_0e942414017e4c5a9eacdd0ee732112c" contextRef="c20250101to20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">24.9</ix:nonFraction> million after deduction of commission and relevant closing fees. The total
            net book value disposed was $<ix:nonFraction name="tlfa:HeadquarterAssetsNetBookValue" id="Fact_474a61e2bec84cc0a2c93bdb7e11ddfb" contextRef="c20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">7.2</ix:nonFraction> million resulting in a gain of $<ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" id="Fact_0b3338422be9464894cbd4e19044cac9" contextRef="c20250101to20250331" unitRef="U002" decimals="-5" scale="6" format="ixt:num-dot-decimal">17.7</ix:nonFraction> million as the result of the sale and this is included in &#8216;Other income on the face of our consolidated statements of operations and comprehensive income. The Company
            has elected to include all one-time move expenses in &#8216;Other income&#8217; as management deems these are not part of our normal operations.</span></div>
</ix:continuation>
        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f5" continuedAt="Text_45a5ca35f1004433b0943094c0def31f6">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>

        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f6" continuedAt="Text_45a5ca35f1004433b0943094c0def31f7"><ix:nonNumeric name="us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" id="Text_e186bac6c81a47b7920dc344595938f8" contextRef="c20250101to20250331" escape="true">
<table cellspacing="0" cellpadding="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%; border-spacing: 0;">


  <tr>

    <td valign="bottom" colspan="4" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: #000000 solid 2px;">
                <div style="text-align: center; font-weight: bold;">Sales and Disposal of Headquarter<span style="font-style: italic;"> (in thousands)</span></div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom;">&#160;</td>

    <td valign="bottom" colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: #CCEEFF; white-space: nowrap;">
                <div style="text-align: left;">Net Proceeds</div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">
                <div>$</div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;">
                <div><ix:nonFraction name="us-gaap:ProceedsFromSaleOfProductiveAssets" id="Fact_c2ca3c159fba4409913178a339735ebe" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">24,897</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;">
                <div style="text-align: left;">NBV of Headquarter Assets</div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;">
                <div><ix:nonFraction name="tlfa:HeadquarterAssetsNetBookValue" id="Fact_3d220075f02f4052bc02c910b22937d3" contextRef="c20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">7,221</ix:nonFraction><br/>
                </div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="text-align: left; font-weight: bold;">Net Gain</div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="font-weight: bold;">$</div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;">
                <div style="font-weight: bold;"><ix:nonFraction name="us-gaap:GainLossOnDispositionOfAssets" id="Fact_3d0ec9730c504cfd827381c8c66db9ed" contextRef="c20250101to20250331" unitRef="U002" decimals="-3" scale="3" format="ixt:num-dot-decimal">17,676</ix:nonFraction></div>
              </td>

    <td valign="bottom" colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;">&#160;</td>

  </tr>


</table>
</ix:nonNumeric></ix:continuation>

        <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f7" continuedAt="Text_45a5ca35f1004433b0943094c0def31f8">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>
</ix:continuation>
        <div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;">
          <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f8" continuedAt="Text_45a5ca35f1004433b0943094c0def31f9">
<div style="text-align: justify;"><span style="font-family: 'Times New Roman'; font-size: 10pt; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">On
              January 28, 2025, the Company also signed a <ix:nonNumeric name="us-gaap:LesseeOperatingLeaseTermOfContract" id="Fact_c201ec18773b4a64a4bc314a67f60090" contextRef="c20250331" format="ixt-sec:duryear">10</ix:nonNumeric>-year lease for new corporate headquarters and distribution facilities in Benbrook
              that will be effective on September 1, 2025, Texas and the Company has the ability to renew the lease for an additional <ix:nonNumeric name="us-gaap:LesseeOperatingLeaseRenewalTerm" id="Fact_ee2a3e2db62a4800b9ba0fc2f90db508" contextRef="c20250331" format="ixt-sec:duryear">10</ix:nonNumeric> years
              at market rate. We also signed a short term lease through lease through September 1, 2025 for our current facility that was evaluated as a sale leaseback. Due to the short term nature of the lease it was not recorded under ASC 842 in
              accordance with our policy of not recording short term leases. </span></div>
</ix:continuation>
          <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f9" continuedAt="Text_45a5ca35f1004433b0943094c0def31f10">
<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
</ix:continuation>
          <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f10" continuedAt="Text_45a5ca35f1004433b0943094c0def31f11">
<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
          </div>
</ix:continuation>
          <ix:continuation id="Text_45a5ca35f1004433b0943094c0def31f11">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company hired Johan Hedberg as its new Chief Executive Officer as of January 6, 2025.&#160; Prior to the hiring of Mr. Hedberg, Janet Carr resigned as Chief
            Executive Officer, effective January 3, 2025; she remained employed by the Company to assist with transition until March 31, 2025. <br/>
          </div>
</ix:continuation>
           </div>

      </div>

      <div><span style="font-family: 'Times New Roman'; font-size: 10pt;"> </span></div>

      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div style="width: 100%;" class="BRPFPageFooter"></div>

        <div class="BRPFPageNumberArea" style="text-align: center;"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">17</span></div>

        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

        <div class="BRPFPageHeader" style="width: 100%;">
          <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
          </div>

        </div>

      </div>

    </div>

    <div><span style="background-color: rgb(255, 255, 255); color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>
 </div>


  <div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
    <div>
      <div>
        <div>
          <div>
            <a id="ManagementsDiscussionandA"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-spacing: 0;">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 45pt;">
                    <div style="text-align: left; font-weight: bold;">Item 2. <br/>
                    </div>
                  </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                    <div style="text-indent: -36pt; margin-left: 36pt; font-weight: bold;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations.</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div style="text-align: justify; font-weight: bold;"><span style="text-decoration: underline;">The Business and Strategy</span></div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000;">Tandy Leather Factory, Inc. is one of the world&#8217;s largest specialty retailers of leather and leathercraft-related items. Founded in 1919 in Fort Worth, Texas, and organized in 2005 as a Delaware
            corporation, the Company introduced leathercrafting to millions of American and later Canadian and other international customers and has built a track record as the trusted source of quality leather, tools, hardware, supplies, kits and teaching
            materials for leatherworkers everywhere.&#160; Today, our mission remains to build on our legacy of inspiring the timeless art and trade of leatherworking.</div>

          <div>&#160;</div>

          <div style="text-align: justify; color: #000000;">What differentiates Tandy from the competition is our high brand awareness and strong brand equity and loyalty, our network of retail stores that provides convenience, a high-touch customer
            service experience, and a hub for the local leathercrafting community, and our 100-year heritage. We believe that this combination of qualities is unique to Tandy and gives the brand competitive advantages that are difficult for others to
            replicate.</div>

          <div>&#160;</div>

          <div style="text-align: justify; color: #000000;">We sell our products primarily through company-owned stores and through orders generated from our global websites, and through direct account representatives in our commercial division.&#160; We also
            manufacture leather lace, cut leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.&#160; We also offer production services to our business customers such as cutting (&#8220;clicking&#8221;), splitting, and some
            assembly. We maintain our principal offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.</div>

          <div>&#160;</div>

          <div style="text-align: justify; color: #000000;">Currently, the Company operates a total of 101 retail stores. There are 91 stores in the United States (&#8220;U.S,&#8221;), nine stores in Canada and one store in Spain.</div>

          <div>&#160;</div>

          <div style="text-align: justify;"><span style="color: #000000;">Tandy Leather has been introducing people to leatherworking for over 100 years.&#160; Our stores have been and continue to be our competitive advantage: where our customers learn the
              craft in classes, open table</span>&#160; &#160;&#160; <span style="color: #000000;">, and from the expertise of our store staff, where they can touch, feel and test the product, and where they can connect and commune with others passionate about leather.&#160;
              Our websites provide inspiration, detailed product descriptions and specifications, educational information and videos, and a convenient place to also purchase products &#8211; especially for those who are far from our retail stores, including a
              growing international customer base.&#160; For many of our retail and web customers, leatherworking evolves from a passion to a trade.&#160; Our Commercial Division is tailored to the needs of those customers who build businesses around leather.&#160; With
              dedicated direct account representatives, a direct-from-our-warehouse shipping model, bulk and volume-based competitive pricing, customized product development, and production and pre-production services, we are building long-term, strategic
              relationships with our largest customers.</span></div>

          <div>&#160;</div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">18</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div style="text-align: justify;"><span style="color: rgb(0, 0, 0);">In 2019,</span>&#160; &#160;&#160; <span style="color: rgb(0, 0, 0);"> we began the process of assessing and reinvigorating the business.&#160; We focused in three broad strategic initiative
              areas: 1) improving our brand proposition, 2) rebuilding our foundation: the talent, processes, tools and systems needed to modernize and efficiently operate the business, and 3) creating a vision and road map for long-term growth.&#160; We had
              significant achievements in all of these areas including significantly improving the product quality, breadth of assortment and value, dramatically improving the website and web operations, rebuilding the team, people policies and culture,
              and replacing all of the key systems, among many other accomplishments.</span></div>

          <div>&#160;</div>

          <div style="text-align: justify; color: #000000;">We have made&#160; steady progress to transform and reinvigorate our business even in the face of two very significant obstacles and&#160; have been focused on improving our financial sustainability and
            profitability.&#160; In the short-term, we are managing operating expenses and gross margin to deliver free operating cash and operating income even in the face of possible continued economic headwinds.&#160; We will also continue to selectively invest
            in profitable sales growth where it makes sense, but rebuilding a durable, profitable business model is the highest priority.</div>

          <div>&#160;</div>

          <div style="text-align: justify;"><a id="z_headingh.37m2jsg"></a><a id="z_headingh.1mrcu09"></a><a id="z_headingh.46r0co2"></a><a id="z_headingh.2lwamvv"></a><a id="z_headingh.111kx3o"></a><a id="z_headingh.3l18frh"></a><span style="color: rgb(0, 0, 0);">As disclosed in our 2024 10-K filing, the Company concluded the sale of our corporate headquarters, and the net proceeds of the sale is recorded in &#8216;Other, net&#8217; in our consolidated statements of operations and
              comprehensive income.</span></div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000;">On January 22, 2025, the Company finalized the sale of its corporate headquarters and distribution facilities in Fort Worth, Texas for a gross sale of $26.5 million before deduction of commission
            and relevant closing fees as referenced in the Company&#8217;s 8-K filed on January 22, 2025. On January 28, 2025, the Company also signed a 10-year lease for new corporate headquarters and distribution facilities in Benbrook, Texas and the Company
            has the ability to renew the lease for an additional 10 years at market rate.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000;">The Company hired Johan Hedberg as its new Chief Executive Officer as of January 6, 2025.&#160; Prior to the hiring of Mr. Hedberg, Janet Carr resigned as Chief Executive Officer, effective January 3,
            2025; she remained employed by the Company to assist with transition until March 31, 2025.</div>

          <div style="text-align: justify; color: #000000;"> <br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">19</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div style="text-align: justify; font-weight: bold;"><a id="z_headingh.206ipza"></a><span style="text-decoration: underline;">Results of Operations</span></div>

          <div><br/>
          </div>

          <div style="text-align: justify; font-style: italic; font-weight: bold;"><a id="z_headingh.4k668n3"></a>Three Months Ended March 31, 2025 and 2024</div>

          <div><br/>
          </div>

          <div style="text-align: justify;">The following table presents selected financial data:</div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="14">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Three Months Ended March 31,</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0); font-style: italic;">(in thousands)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2025</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2024</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">$ </div>
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">% </div>
                  <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Change</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0);">Sales</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">19,036</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">19,275</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(239</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(1.2</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0);">Gross profit</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10,718</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10,920</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(202</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(1.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0);">Gross margin percentage</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">56.3</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">56.7</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(0.4</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 2px; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0);">Operating expenses</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10,456</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">10,271</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">185</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1.8</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">%</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0);">Income from operations</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">262</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">649</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(387</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(59.6</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)%</div>
                </td>

  </tr>


</table>
          <div><br/>
          </div>

          <div style="text-align: justify; font-weight: bold;">Net Sales</div>

          <div><br/>
          </div>

          <div style="text-align: justify;">Consolidated net sales for the quarter ended <span style="color: rgb(0, 0, 0);">March 31, 2025 </span>decreased $0.2 million, or 1.2%, compared to the corresponding prior year period.&#160; We believe the decrease
            in sales was due in small part to temporary store closures related to store relocation and ongoing weak consumer demand compared to a year ago resulting from uncertainty related to global political, economic and other uncontrollable factors.</div>

          <div><br/>
          </div>

          <div style="text-align: justify;"><a id="z_headingh.1egqt2p"></a>We evaluate a number of factors when determining whether to close existing stores, including the 4-wall cash flow trend and longer-term projection for the store, the long-term
            sales trend, ongoing cost of store operations, date of lease expiration, quality of the store and location, and the size and potential of the trade area including proximity to other existing stores, among other variables.&#160; We use similar
            factors to determine whether to open new stores.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; font-weight: bold;">Gross Profit</div>

          <div><br/>
          </div>

          <div>Gross profit for the quarter decreased by $0.2 million, or 1.8%, compared to the same period in 2024. While gross margin percentage for the quarter ended <span style="color: rgb(0, 0, 0);">March 31, 2025,</span> remains practically the same
            year-over-year, the slight decrease of&#160; 40 basis points due to increased promotional activity in the first quarter of both years.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; font-weight: bold;">Operating expenses</div>

          <div><br/>
          </div>

          <div style="text-align: justify;">Operating expenses for the quarter increased by $0.2 million or 1.8% compared to the corresponding prior year period, primarily as a result of an increase in employment costs of $0.3 million due to the
            combination of higher insurance costs, merit increases, and some key personnel hired in the second half of 2024, an increase in occupancy of $0.1 million mainly attributed to rental of our corporate headquarters; partially offset by a decrease
            in professional services of $0.1 million and a decrease in depreciation expense of $0.1 million due to the disposal of our owned corporate headquarters.</div>

          <div><br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">20</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div style="text-align: justify; font-weight: bold;">Income Taxes</div>

          <div><br/>
          </div>

          <div style="text-align: justify;"><a id="z_headingh.3ygebqi"></a>Our effective tax rate for the three months ended <span style="color: rgb(0, 0, 0);">March 31, 2025 </span>and <span style="color: rgb(0, 0, 0);">March 31, 2024 </span>was
            24.8% and 25.7% respectively. Our effective tax rate differs from the federal statutory rate primarily due to U.S. state income tax expense, expenses that are non-deductible for tax purposes, and the estimates in our valuation allowance
            associated with our deferred tax assets.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000; font-weight: bold;"><span style="text-decoration: underline;">Capital Resources, Liquidity and Financial Condition</span></div>

          <div><br/>
          </div>

          <div style="text-align: justify;"><a id="z_headingh.2dlolyb"></a>We require cash principally for day-to-day operations, to purchase inventory and to finance capital investments.&#160; We expect to fund our operating and liquidity needs primarily
            from a combination of current cash balances and cash generated from operating activities.&#160; Any excess cash will be invested as determined by our Board of Directors in accordance with its approved investment policy.&#160; Our cash balances as of <span style="color: rgb(0, 0, 0);">March 31, 2025 </span>totaled $23.6 million.</div>

          <div><br/>
          </div>

          <div style="text-align: justify;">On October 30, 2024, the Company renewed the promissory note under its credit agreement (the &#8220;Credit Agreement&#8221;) with JPMorgan Chase Bank, N.A. through October 31, 2025.&#160; Under the Credit Agreement, the bank will
            provide the Company a credit facility of up to $5,000,000 on standard terms and conditions, including affirmative and negative covenants set forth in the Credit Agreement.&#160; As security for the credit facility, the Company has pledged as
            collateral certain of its assets, including the Company&#8217;s cash in deposit accounts, inventory and equipment.&#160; The interest rate is based on CME term SOFR + 210 basis points and the maturity is 1 year.&#160; As of the date of this filing, no funds
            had been borrowed under this facility.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; font-weight: bold;"><a id="z_headingh.3cqmetx"></a>Share Repurchase Program and Share Repurchase</div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000;"><a id="z_headingh.1rvwp1q"></a>On August 7, 2022, the Board of Directors approved a new program to repurchase up to $5.0 million of the Company&#8217;s common stock between that date and August 31,
            2024.&#160; As of August 31, 2024, the Company had purchased less than $10,000 of shares under this plan.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000;">On September 17, 2024, the Board of Directors approved<span style="font-style: italic;">&#160;</span>the renewal of the stock plan and the&#160; Company shall be authorized to repurchase up to $5 million
            (at then-current market value) of the Company&#8217;s common stock in open-market transactions at prevailing market prices upon periodic instructions from the Board or an authorized sub-committee of the Board until September 30, 2026.&#160; As of March
            31, 2025, $5.0 million remained available for repurchase under this new program.</div>

          <div><br/>
          </div>

          <div style="text-align: justify; font-weight: bold;"><a id="z_headingh.4bvk7pj"></a>Cash Flows</div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;">
                  <div style="color: rgb(0, 0, 0); font-weight: bold;">(amounts in thousands)</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: right; color: rgb(0, 0, 0); font-weight: bold;">2025</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: right; color: rgb(0, 0, 0); font-weight: bold;">2024</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0);">Net cash used by operating activities</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(536</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">1,086</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%;">
                  <div style="color: rgb(0, 0, 0);">Net cash from investing activities</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">23,566</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(1,227</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0);">Net cash used in financing activities</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(12,745</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">(1</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">)</div>
                </td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">Effect of exchange rate changes on cash and cash equivalents</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">38</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0);">298</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF;">
                  <div style="color: rgb(0, 0, 0); font-weight: bold;">Net increase in cash and cash equivalents</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-weight: bold;">10,323</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">
                  <div style="color: rgb(0, 0, 0); font-weight: bold;">156</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
          <div><br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">21</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div style="text-align: justify;">For the three months ended <span style="color: rgb(0, 0, 0);">March 31, 2025</span>, cash used in operations generated $0.5 million driven by a net income from operations of $0.3 million , non-cash expense of
            $1.4 million, including depreciation, amortization, and stock-based compensation, a decrease in inventory of $1.2 million, a decrease in prepaid expenses of $0.2 million; partially offset by a reduction in lease liability payments of $1.4
            million, a decrease in accrued expenses of $0.9 million, an increase in other assets of $0.2 million, and a decrease in accounts payable of $0.1 million. Cash provided from our investing activities was $23.3 million, which included net proceeds
            from sale of our corporate headquarters of $24.9 million and purchase of assets for our new corporate facility of $1.3 million. We paid dividends in the amount of $12.7 million.&#160; The above activities, in addition to the effect of exchange rate
            changes, resulted in a net increase in cash of $10.3 million.</div>

          <div><br/>
          </div>

          <div style="text-align: justify;">For the three months ended March 31, 2024, cash from operations generated $1.1 million driven by a net income of $0.5 million, non-cash expense of $1.4 million, including depreciation, amortization, and
            stock-based compensation, a net reduction in inventory of $1.2 million and a decrease in prepaid expense of $0.1 million, partially offset by a reduction to working capital including a net $1.1 million decrease in accrued expense and other
            liabilities, a reduction in lease liability payments of $0.9 million, and a decrease in accounts payable trade of $0.1 million. We invested $1.2 million in capital expenditure primarily related to replacing a new roof at our corporate
            headquarters and other new capital investments due to new store openings and store relocations.&#160; The activities above, in addition to the effect of exchange rate changes, resulted in a net increase in cash of $0.2 million</div>

          <div><br/></div>

          <div>
            <div>
              <table cellspacing="0" cellpadding="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-spacing: 0;">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 45pt; white-space: nowrap;">
                      <div style="text-align: left; font-weight: bold;">Item 4.<br/>
                      </div>
                    </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                      <div style="font-weight: bold;">Controls and Procedures.</div>
                    </td>

  </tr>


</table>
            </div>

            <div style="font-weight: bold;">&#160;</div>

          </div>

          <div style="text-align: justify; font-style: italic; font-weight: bold;">Evaluation of Disclosure Controls and Procedures</div>

          <div><br/>
          </div>

          <div style="text-align: justify;"><a id="z_headingh.1664s55"></a>Our management team, under the supervision and with the participation of our Chief Executive Officer (who serves as our principal executive officer and principal financial
            officer) , evaluated the effectiveness of the design and operation of our disclosure controls and procedures as such term is defined under Rule 13a-15(e) promulgated under the Securities Exchange Act of 1934, as amended, as of the last day of
            the fiscal period covered by this report, <span style="color: rgb(0, 0, 0);">March 31, 2025</span>. The term disclosure controls and procedures means our controls and other procedures that are designed to ensure that information required to be
            disclosed by us in the reports that we file or submit under the Securities Exchange Act of 1934, as amended, is recorded, processed, summarized and reported, within the time periods specified in the Securities and Exchange Commission's rules
            and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that information required to be disclosed by us in the reports that we file or submit under the Securities Exchange Act of
            1934, as amended, is accumulated and communicated to management, including our principal executive and principal financial officer, or persons performing similar functions, as appropriate to allow timely decisions regarding required disclosure.
            Based on this evaluation, our management, with the participation of our Chief Executive Officer, concluded that, as of <span style="color: rgb(0, 0, 0);">March 31, 2025</span>, our disclosure controls and procedures were effective at a
            reasonable assurance level.</div>

          <div><br/>
          </div>

          <div style="font-weight: bold;"><a id="z_headingh.3q5sasy"></a>Changes in Internal Control Over Financial Reporting</div>

          <div>&#160;</div>

          <div>There have been no changes in our internal control over financial reporting during the fiscal quarter ended <span style="color: rgb(0, 0, 0);">March 31, 2025 </span>that materially affected, or are reasonably likely to materially affect,
            our internal control over financial reporting.</div>

          <div><br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">22</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div style="text-align: justify; font-weight: bold;"><a id="PARTII.OTHERINFORMATION"><!--Anchor--></a>PART II.&#160; OTHER INFORMATION</div>

          <div><br/>
          </div>

          <div>
            <a id="LegalProceedings."><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-spacing: 0;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 45pt;">
                    <div style="text-align: justify; font-weight: bold;">Item 1. <br/>
                    </div>
                  </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                    <div style="text-align: justify; font-weight: bold;">Legal Proceedings.</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div style="text-align: justify;">The information contained in Note 6, <span style="font-style: italic;">Commitments and Contingencies</span> to the Consolidated Financial Statements included in Part I, Item 1 of this Report is hereby
            incorporated into this Item 1 by reference.</div>

          <div><br/>
          </div>

          <div>
            <a id="RiskFactors."><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-spacing: 0;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 45pt;">
                    <div style="text-align: justify; font-weight: bold;">Item 1A. </div>
                  </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                    <div style="text-align: justify; font-weight: bold;">Risk Factors.</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div style="text-align: justify;">Our Risk Factors are discussed fully in Part I Item 1A &#8220;Risk Factors&#8221; in our Annual Report on Form 10-K for the fiscal year ended December 31, 2024 and incorporated herein by reference.&#160; In addition, we have
            identified the following additional risk factors:</div>

          <div style="text-align: justify;"> <br/>
          </div>

          <div style="text-align: justify;">
            <div style="text-align: justify; color: #000000; font-family: 'Times New Roman', Times, serif; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-weight: bold; font-style: italic; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">Recent Changes to U.S.&#160;Tariff&#160;Rates</span><span style="background-color: rgb(255, 255, 255); font-size: 10pt; font-family: 'Times New Roman',Times,serif; font-style: italic; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">.&#160; </span><span style="background-color: rgb(255, 255, 255); font-size: 10pt; font-family: 'Times New Roman',Times,serif; color: rgb(0, 0, 0); font-variant: normal; text-transform: none;">The manufacturing of our products is primarily outsourced to third parties across multiple countries, most notably China.&#160; In March and April 2025, the U.S. increased&#160;tariff&#160;rates on imported
                goods from numerous countries, including China.&#160; On April 9, the U.S. temporarily delayed implementation of those new tariffs by 90 days, resulting in a 10%&#160;tariff&#160;for most countries, but these delays excluded products imported from China.&#160;
                At the conclusion of that 90-day period, tariffs on products imported from those countries may again increase significantly.&#160; We continue to focus on opportunities to mitigate negative impacts and increase efficiencies and scale within our
                supply chain.&#160; However, significant increases in tariff rates, particularly for products imported mainly from China, would substantially increase our cost for those products.&#160; These increases may likely force the Company to increase our
                prices to customers for those products to maintain profitability, which could in turn lead to a decrease in our sales.&#160; Even if we are able to avoid raising the prices of our own products, the macro-economic inflationary impact from tariffs
                of substantially higher prices on other products sold in this country could also harm our sales by reducing our customers&#8217; ability to make discretionary purchases of items such as our products.&#160; The global&#160;tariff&#160;environment is changing
                rapidly, and we cannot be assured that we will not be materially negatively impacted by these changes.&#160;</span></div>

            <div><br/>
            </div>

          </div>

          <div style="text-align: justify;"><a id="z_headingh.34g0dwd"></a></div>

          <div style="text-align: justify; color: #000000;"><span style="font-weight: bold; font-style: italic;">Increased Expenses from Renting Headquarters Facilities and Flagship Store.</span>&#160; Until January 2025, the Company owned the buildings housing
            its principal offices, distribution center and flagship retail store in Fort Worth, Texas.&#160; Since closing the sale of those buildings in January 2025, the Company has leased its current spaces, and we plan to relocate our facilities to new
            rented spaces during the second half of 2025.&#160; Excluding buildout, furniture, equipment and other costs associated with the move itself, the Company expects to pay initial combined rent for new headquarters and flagship store facilities in
            excess of $1.5 million per year (increasing annually beginning in 2026).&#160; If the Company is unable to generate additional sales and profits to offset these added expenses, this could have a material adverse effect on the Company and its
            operations.</div>

          <div><br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">23</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div>
            <a id="UnregisteredSalesofEquity"><!--Anchor--></a>
<table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-spacing: 0;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 45pt;">
                    <div style="text-align: justify; font-weight: bold;">Item 2.</div>
                  </td>

    <td style="text-align: left; vertical-align: top; width: auto;">
                    <div style="text-align: justify; font-weight: bold;">Unregistered Sales of Equity Securities and Use of Proceeds.</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold;">Purchases of Equity Securities by the Issuer and Affiliated Purchasers</div>

          <div><br/>
          </div>

          <div style="text-align: justify; color: #000000;">The following table provides information about purchases we have made of our common stock during the quarter ended March 31, 2025:</div>

          <div><br/>
          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;" class="cfttable">


  <tr>

    <td valign="bottom" style="vertical-align: middle;" colspan="16">
                  <div style="text-align: center; font-weight: bold;">ISSUER PURCHASES OF EQUITY SECURITIES</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px;">
                  <div style="text-align: center; font-weight: bold;">Period</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">(a) Total </div>
                  <div style="text-align: center; font-weight: bold;">number of </div>
                  <div style="text-align: center; font-weight: bold;">shares </div>
                  <div style="text-align: center; font-weight: bold;">purchased</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">(b) Average </div>
                  <div style="text-align: center; font-weight: bold;">price paid </div>
                  <div style="text-align: center; font-weight: bold;">per share</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">(c) Total number of shares </div>
                  <div style="text-align: center; font-weight: bold;">purchased as part of</div>
                  <div style="text-align: center; font-weight: bold;"> publicly announced plans </div>
                  <div style="text-align: center; font-weight: bold;">or programs</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" colspan="2">
                  <div style="text-align: center; font-weight: bold;">(d) Maximum value of</div>
                  <div style="text-align: center; font-weight: bold;"> shares that may yet be</div>
                  <div style="text-align: center; font-weight: bold;"> purchased under the plans </div>
                  <div style="text-align: center; font-weight: bold;">or programs</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%; background-color: #CCEEFF;">
                  <div>January 1 &#8211; January 31, 2025</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td style="vertical-align: middle; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                  <div style="text-align: center;">&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td style="vertical-align: middle; text-align: center; width: 9%; background-color: rgb(204, 238, 255);" colspan="1">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF;" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF;" colspan="1">
                  <div>5,000,000</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; width: 52%;">
                  <div>February 1 &#8211; February 28, 2025</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td style="vertical-align: middle; text-align: center; width: 9%;" colspan="1">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div style="text-align: center;">&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td style="vertical-align: middle; text-align: center; width: 9%;" colspan="1">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; width: 1%;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%;" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; width: 9%;" colspan="1">
                  <div>5,000,000</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; width: 1%; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF;">
                  <div>March 1 &#8211; March 31, 2025</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: #000000 solid 2px; background-color: #CCEEFF;">
                  <div style="text-align: right; color: rgb(0, 0, 0);"><br/>
                  </div>
                </td>

    <td style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); text-align: center;">&#8212;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; background-color: rgb(204, 238, 255); text-align: center;"><br/>
                </td>

    <td valign="bottom" style="vertical-align: middle; background-color: rgb(204, 238, 255); text-align: center;">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle; border-bottom: #000000 solid 2px; background-color: #CCEEFF;"><br/>
                </td>

    <td style="vertical-align: middle; border-bottom: 2px solid rgb(0, 0, 0); background-color: rgb(204, 238, 255); text-align: center;">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">
                  <div>$</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right; padding-bottom: 2px; background-color: #CCEEFF;" colspan="1">
                  <div>5,000,000</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>

  <tr>

    <td valign="bottom" style="vertical-align: bottom;">
                  <div>Total</div>
                </td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td style="vertical-align: middle; text-align: center;" colspan="1">
                  <div>&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right;" colspan="1">
                  <div style="text-align: center;">&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: middle;"><br/>
                </td>

    <td valign="bottom" style="vertical-align: middle;">
                  <div style="text-align: center;">&#8212;</div>
                </td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

    <td valign="bottom" style="text-align: right; vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; text-align: right;" colspan="1">&#160;</td>

    <td valign="bottom" style="vertical-align: bottom; white-space: nowrap;" colspan="1">&#160;</td>

  </tr>


</table>
          <div><a id="z_headingh.1jlao46"></a><br/>
          </div>

          <div>
            <div style="font-weight: bold;"> <a id="Exhibits."><!--Anchor--></a>
              <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-spacing: 0;" class="DSPFListTable">


  <tr style="vertical-align: top;">

    <td style="text-align: right; vertical-align: top; width: 45pt; white-space: nowrap;">
                      <div style="text-align: left; font-weight: bold;">Item 6.<br/>
                      </div>
                    </td>

    <td style="text-align: left; vertical-align: top; width: auto; font-weight: bold;">Exhibits.</td>

  </tr>


</table>
            </div>

            <div><br/>
            </div>

          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 13%; vertical-align: top;">
                  <div style="font-weight: bold;">Exhibit</div>
                  <div style="font-weight: bold;"><span style="text-decoration: underline;">Number</span></div>
                </td>

    <td style="width: 87%; vertical-align: top;">
                  <div>&#160;</div>
                  <div style="font-weight: bold;"><span style="text-decoration: underline;">Description</span></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>3.1</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000090972405000028/ex3-1.htm">Certificate of Incorporation of The Leather Factory, Inc., and Certificate of Amendment to Certificate of Incorporation of The Leather Factory,
                      Inc. filed as Exhibit 3.1 to Tandy Leather Factory, Inc.&#8217;s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on August 12, 2005 and incorporated by reference herein. </a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>3.2</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div style="color: #0000FF;"><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036121040868/brhc10031621_ex3-1.htm">Bylaws of Tandy Leather Factory, Inc., filed as Exhibit 3.1 to Tandy Leather Factory, Inc.&#8217;s Current Report on
                      Form 8-K filed with the Securities and Exchange Commission on December 8, 2021 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>3.3</div>
                  <div>&#160;</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000090972413000031/exh3-1.htm">Certificate of Designations of Series A Junior Participating Preferred Stock of Tandy Leather Factory, Inc. filed as Exhibit 3.1 to Tandy Leather
                      Factory&#8217;s Inc.&#8217;s Current Report on Form 8-K filed with the Securities and Exchange Commission on June 10, 2013 and incorporated by reference herein. </a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div>3.4</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div style="color: #0000FF;"><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036123024770/brhc20052855_ex3-4.htm">Certificate of Amendment of Certificate of Incorporation, dated March 1, 2023.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>4.1</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div style="color: #0000FF;"><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036121021870/brhc10025890_ex4-1.htm">Description of Securities filed as Exhibit 4.1 to Tandy Leather Factory, Inc.&#8217;s Quarterly Report on Form 10-Q
                      filed with the Securities and Exchange Commission on June 22, 2021 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;">&#160;</td>

    <td style="width: 87%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>10.1</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000090972413000048/exhibit10-1.htm">Tandy Leather Factory, Inc. 2013 Restricted Stock Plan, filed as Exhibit 10.1 to Tandy Leather Factory&#8217;s Quarterly Report on Form 10-Q filed
                      with the Securities and Exchange Commission on November 14, 2013 and incorporated by reference herein. </a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>10.2</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div style="color: #0000FF;"><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036121021870/brhc10025890_ex10-5.htm">Amendment #1 to Tandy Leather Factory, Inc. 2013 Restricted Stock Plan filed as Exhibit 10.5 to Tandy Leather
                      Factory, Inc.&#8217;s Quarterly Report on Form 10-Q filed with the Securities and Exchange on June 22, 2021 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>10.3</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000090972414000004/exhibit10-1.htm">Form of Non-Employee Director Restricted Stock Agreement under Tandy Leather Factory, Inc.&#8217;s 2013 Restricted Stock Plan, filed as Exhibit
                      10.1 to Tandy Leather Factory, Inc.&#8217;s Current Report on Form 8-K filed with the Securities and Exchange Commission on February 14, 2014 and incorporated by reference herein. </a></div>
                </td>

  </tr>


</table>
          <div><br/>
          </div>

          <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">24</span></div>

            <div class="BRPFPageBreak" style="page-break-after: always;">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>10.4</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036121021870/brhc10025890_ex10-7.htm">Form of Employee Restricted Stock Award Agreement under Tandy Leather Factory, Inc.&#8217;s 2013 Restricted Stock Plan, filed as Exhibit
                      10.7 to Tandy Leather Factory, Inc.&#8217;s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on June 22, 2021 and incorporated by reference herein. </a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>10.5</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div style="color: #0000FF;"><a href="https://www.sec.gov/Archives/edgar/data/909724/000090972418000022/exhibit10-1.htm">Form of Employment Agreement dated October 2, 2018 between the Company and Janet Carr, filed as Exhibit 10.1 to Tandy
                      Leather Factory Inc.&#8217;s Current Report on Form 8-K filed with the Securities and Exchange Commission on October 5, 2018 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>10.6</div>
                  <div>&#160;</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036123039677/brhc20057333_ex10-10.htm">Tandy Leather Factory, Inc. 2023 Incentive Stock Plan, filed as Exhibit 10.10 to Tandy Leather Factory, Inc.&#8217;s Quarterly Report on
                      Form 10-Q filed with the Securities and Exchange Commission on August 14, 2023</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div>10.7</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036125006103/ef20039035_ex10-12.htm">Letter agreement dated January 2, 2025, between the Company and Janet Carr, filed as Exhibit 10.12 to Tandy Leather Factory, Inc.&#8217;s
                      Annual Report on Form 10-K filed with the Securities and Exchange Commission on&#160;&#160; February 26, 2025 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div>10.8</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036125006103/ef20039035_ex10-13.htm">Employment Agreement dated January 2, 2025, between the Company and Johan Hedberg, filed as Exhibit 10.13 to Tandy Leather Factory,
                      Inc.&#8217;s Annual Report on Form 10-K filed with the Securities and Exchange Commission on&#160;&#160; February 26, 2025 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div>10.9</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036125006103/ef20039035_ex10-14.htm">Form of Restricted Stock Unit Agreement dated February 19, 2025, between the Company and Johan Hedberg filed as Exhibit 10.14 to Tandy
                      Leather Factory, Inc.&#8217;s Annual Report on Form 10-K filed with the Securities and Exchange Commission on&#160;&#160; February 26, 2025 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div>10.10</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);" rowspan="1">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036125006103/ef20039035_ex10-15.htm">Form of Restricted Stock Unit Agreement dated February 19, 2025, between the Company and Johan Hedberg filed as Exhibit 10.15 to Tandy
                      Leather Factory, Inc.&#8217;s Annual Report on Form 10-K filed with the Securities and Exchange Commission on&#160;&#160; February 26, 2025 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;">&#160;</td>

    <td style="width: 87%; vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>14.1</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div style="color: #0000FF;"><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036121021870/brhc10025890_ex14-1.htm">Code of Business Conduct and Ethics of Tandy Leather Factory, Inc., adopted by the Board of Directors in May,
                      2021, filed as Exhibit 14.1 to Tandy Leather Factory, Inc.&#8217;s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on June 22, 2021 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="ef20047588_ex19-1.htm">*19.1</a></div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>Tandy Leather Factory, Inc. Insider Trading Policy</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>21.1</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="https://www.sec.gov/Archives/edgar/data/909724/000114036124014799/ef20015300_ex21-1.htm">Subsidiaries of Tandy Leather Factory, Inc., filed as Exhibit 21.1 to Tandy Leather Factory, Inc.&#8217;s Annual Report on Form 10-K filed
                      with the Securities and Exchange Commission on&#160;&#160; March 22, 2024 and incorporated by reference herein.</a></div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="ef20047588_ex31-1.htm">*31.1</a></div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>13a-14(a) or 15d-14(a) Certification by the Chief Executive Officer pursuant to Rule 13a-14(a) or 15d-14(a) under the Securities Exchange Act of 1934, as amended.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div><a href="ef20047588_ex32-1.htm">*32.1</a></div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2022.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>*101.INS</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>XBRL Instance Document.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>*101.SCH</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>XBRL Taxonomy Extension Schema Document.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>*101.CAL</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>XBRL Taxonomy Extension Calculation Document.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>*101.DEF</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>XBRL Taxonomy Extension Definition Document.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>*101.LAB</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>XBRL Taxonomy Extension Labels Document.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;" rowspan="1">&#160;</td>

    <td style="width: 87%; vertical-align: top;" rowspan="1">&#160;</td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>*101.PRE</div>
                </td>

    <td style="width: 87%; vertical-align: top; background-color: rgb(204, 238, 255);">
                  <div>XBRL Taxonomy Extension Presentation Document.</div>
                </td>

  </tr>

  <tr>

    <td style="width: 13%; vertical-align: top;"><br/>
                </td>

    <td style="width: 87%; vertical-align: top;">&#160;</td>

  </tr>


</table>
          <div>
            <div>
              <hr style="background-color: #000000; border-bottom: medium none; border-left: medium none; border-right: medium none; border-top: medium none; margin: 0px auto 0px 0px; height: 2px; width: 10%; color: #000000; margin-left: 0px; margin-right: auto;"/></div>

            <div>*Filed herewith.</div>

          </div>

          <div><br/>
          </div>

          <div style="clear: both; margin-top: 10pt; margin-bottom: 10pt;" class="BRPFPageBreakArea">
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">25</span></div>

            <div style="page-break-after: always;" class="BRPFPageBreak">
              <hr style="border-width: 0px; clear: both; margin: 4px 0px; width: 100%; height: 2px; color: #000000; background-color: #000000;"/></div>

            <div style="width: 100%;" class="BRPFPageHeader">
              <div><a href="#TABLEOFCONTENTS"><span style="font-weight: normal; font-style: italic; font-size: 8pt;">Table of Contents</span></a><br/>
              </div>

            </div>

          </div>

          <div style="text-align: center; font-weight: bold;"><a id="SIGNATURES"><!--Anchor--></a>SIGNATURES</div>

          <div><br/>
          </div>

          <div style="text-align: justify;">Pursuant to the requirements of the Securities and Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.<br/>
          </div>

          <div style="text-align: justify;"> <br/>
          </div>

          <div style="text-align: justify;">
            <a id="z_Hlk195542097"></a>
<table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td colspan="2" style="vertical-align: top;">
                    <div style="text-align: justify; font-weight: bold; margin-left: 45pt;">TANDY LEATHER FACTORY, INC.</div>
                  </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td colspan="2" style="vertical-align: top;">
                    <div style="text-align: justify; margin-left: 45pt;">(Registrant)</div>
                  </td>

  </tr>

  <tr>

    <td rowspan="1" style="width: 50%; vertical-align: top;">&#160;</td>

    <td rowspan="1" colspan="2" style="vertical-align: top;">&#160;</td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">
                    <div style="text-align: justify; color: #000000;">Date: May 12, 2025</div>
                  </td>

    <td style="width: 3%; vertical-align: top;">
                    <div style="text-align: justify; color: #000000;">By:</div>
                  </td>

    <td style="width: 47%; vertical-align: top;">
                    <div style="text-align: justify; color: #000000;"><span style="text-decoration: underline;">/s/ Johan Hedberg</span></div>
                  </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td colspan="2" rowspan="1" style="width: 3%; vertical-align: top;">
                    <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold; margin-left: 27pt;">Johan Hedberg</div>
                  </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td colspan="2" rowspan="1" style="width: 3%; vertical-align: top;">
                    <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold; margin-left: 27pt;">Chief Executive Officer</div>
                  </td>

  </tr>

  <tr>

    <td style="width: 50%; vertical-align: top;">&#160;</td>

    <td colspan="2" rowspan="1" style="width: 3%; vertical-align: top;">
                    <div style="text-align: justify; color: rgb(0, 0, 0); margin-left: 27pt;">&#160;(principal executive officer and principal financial officer)</div>
                  </td>

  </tr>


</table>
          </div>

          <div><br/>
          </div>

          <div><br/>
          </div>

          <div>
            <div style="text-align: center;" class="BRPFPageNumberArea"><span style="font-family: 'Times New Roman'; font-size: 8pt; font-weight: normal; font-style: normal;">26</span></div>

            <hr style="height: 2px; color: #000000; background-color: #000000; text-align: center; border: none; margin-left: auto; margin-right: auto;"/> </div>

        </div>

      </div>

    </div>

  </div>


</div>
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-19.1
<SEQUENCE>2
<FILENAME>ef20047588_ex19-1.htm
<DESCRIPTION>EXHIBIT 19.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 25.3.2.5298
         Copyright 1995 - 2025 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;">
    <div style="text-align: right;"><font style="font-weight: bold;">Exhibit 19.1</font><br>
    </div>
    <div> <br>
    </div>
    <div style="text-align: center;"> <img src="tandylogo1.jpg"></div>
    <div> <br>
    </div>
    <div>
      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-variant: small-caps; font-weight: bold;">Tandy Leather Factory, Inc.</div>
      <div><br>
      </div>
      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Insider Trading Policy</div>
      <div><br>
      </div>
      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt; font-style: italic; font-weight: bold;"><u>Adopted by the Board of Directors on December 4, 2018</u></div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">GENERAL POLICY ON INSIDER TRADING UNDER THE FEDERAL SECURITIES LAWS APPLICABLE TO EMPLOYEES OF TANDY LEATHER FACTORY, INC. AND ITS SUBSIDIARIES (collectively, the
        &#8220;Company&#8221;):</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">It is illegal to trade, or &#8220;tip&#8221; others to trade, in securities while in possession of <font style="font-size: 10pt; font-family: 'Times New Roman'; font-style: italic;">material non-public information</font> concerning the issuer of those securities. Trading on material non-public information is frequently referred to as &#8220;insider trading.&#8221; Insider trading by the Company&#8217;s directors, officers, employees,
        and their immediate families, members of their household and controlled entities is forbidden. Information is material if there is a substantial likelihood that such information would be important to someone in deciding whether to buy, sell or hold
        securities. The information is &#8220;nonpublic&#8221; if it is not generally available to ordinary investors in the marketplace. Generally, material nonpublic information loses its &#8220;inside&#8221; character only after it has been publicly disclosed and absorbed by
        the marketplace.</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Individuals who engage in insider trading are subject to criminal and civil liability. Criminal penalties for persons convicted of insider trading include fines up to
        $1 million and ten years imprisonment per violation.</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In order to ensure compliance with the restrictions on insider trading, it is the policy of the Company that its directors, officers, employees, and their immediate
        family and members of their household (collectively, &#8220;Company Personnel&#8221;) should <font style="font-size: 10pt; font-family: 'Times New Roman';"><u>not</u></font>:</div>
      <div><br>
      </div>
      <table cellspacing="0" cellpadding="0" id="zdd6fa6eb770147279b258a8da1605afc" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">

          <tr>
            <td style="width: 36pt;"><br>
            </td>
            <td style="width: 39pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#8226;</td>
            <td style="width: auto; vertical-align: top; text-align: justify;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">Buy or sell securities of the Company or securities of any other company, or recommend the purchase or sale of such securities, based on information that has not been released to
                the public;</div>
            </td>
          </tr>

      </table>
      <table cellspacing="0" cellpadding="0" id="z540674ebcc3548fda2417d96f3db1607" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">

          <tr>
            <td style="width: 36pt;"><br>
            </td>
            <td style="width: 39pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#8226;</td>
            <td style="width: auto; vertical-align: top; text-align: justify;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">Provide information about the Company to others who might buy or sell securities based on that information;</div>
            </td>
          </tr>

      </table>
      <table cellspacing="0" cellpadding="0" id="z7eb0a5d0ab3040948d6db42411d8c63d" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">

          <tr>
            <td style="width: 36pt;"><br>
            </td>
            <td style="width: 39pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#8226;</td>
            <td style="width: auto; vertical-align: top; text-align: justify;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">Buy or sell Company securities if you have the slightest doubt as to whether the information has been released to the public. Generally, you should wait at least two full business
                days after information has been released to the public before executing a trade; or</div>
            </td>
          </tr>

      </table>
      <table cellspacing="0" cellpadding="0" id="z1a1776275ae545fd8ce2fc355612ddfc" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">

          <tr>
            <td style="width: 36pt;"><br>
            </td>
            <td style="width: 39pt; vertical-align: top; font-family: 'Times New Roman'; font-size: 10pt;">&#8226;</td>
            <td style="width: auto; vertical-align: top; text-align: justify;">
              <div style="font-family: 'Times New Roman'; font-size: 10pt;">Engage in &#8220;short sales&#8221; or &#8220;sales against the box&#8221; or trade in puts, calls or other options on the Company&#8217;s securities. The purpose of this prohibition is to avoid the appearance
                that any Company Personnel may be trading on inside information.</div>
            </td>
          </tr>

      </table>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">&#160;</div>
      <div class="BRPFPageBreakArea" style="clear: both; margin-top: 10pt; margin-bottom: 10pt;">
        <div class="BRPFPageBreak" style="page-break-after: always;">
          <hr noshade="noshade" style="margin: 4px 0px; width: 100%; border-width: 0; height: 2px; color: #000000; background-color: #000000; clear: both;"></div>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company imposes a &#8220;Blackout Period&#8221; on all Company Personnel on trading, beginning on the fifteenth (15<sup style="vertical-align: text-top; line-height: 1; font-size: smaller;">th</sup>) day of the third month of each fiscal quarter
        and continuing until two (2) trading days after the Company&#8217;s earnings announcement of its quarterly earnings or (in the case of the fourth quarter) annual earnings. In addition, the Company may impose other &#8220;black-outs&#8221; on trading as circumstances
        dictate or as required by law. During any Blackout Period, Company Personnel <font style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold; font-style: italic;">may not</font><font style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: bold;">&#160;</font>buy or sell Company stock, except for: transactions made pursuant to a Rule 10b5-1 trading plan or other exceptions approved (in either case) by the Company&#8217;s General Counsel. This prohibition also means that
        all Company Personnel must cancel any pending limit order placed prior to the beginning of the Blackout Period. Employees will receive periodic reminders regarding the start and finish of the Blackout Periods.</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">In addition, the Company&#8217;s executive officers and members of the Board of Directors should not engage in trading in the Company&#8217;s securities on a short-term or
        speculative basis or when such trading would result in short-swing liability under Section 16(b) of the Securities Exchange Act of 1934. Directors and executive officers are required to report to the Company before transacting their intention to
        make any transactions in the Company&#8217;s securities in advance of such transactions, and they must report the results of such transactions following such transactions, in order for the Company to ensure compliance with reporting and trading
        obligations applicable to directors and officers.</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Company Personnel who wish to enter into or modify a contract, instructions or a trading plan pursuant to Rule 10b5-1 of the Securities Exchange Act of 1934 must
        obtain the prior written approval of the Company&#8217;s General Counsel.</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">You should notify your supervisor or the Company&#8217;s General Counsel if you know or suspect others are trading in securities based on inside information. Violation of
        this policy may result in termination of employment. In addition, the Company may pursue civil or criminal sanctions against employees violating the policy.</div>
      <div><br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Each applicable director, officer and employee of the Company is responsible for the compliance with this policy by his/her immediate family and members of their
        household. Any questions concerning this policy should be directed to Daniel Ross, General Counsel, at (817) 457-7908.</div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br>
      </div>
      <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br>
      </div>
      <div style="text-align: center; font-family: 'Times New Roman'; font-size: 10pt;"> <font style="font-size: 8pt;">2</font><br>
        <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
    </div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>3
<FILENAME>ef20047588_ex31-1.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 25.3.2.5298
         Copyright 1995 - 2025 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;">
    <div style="text-align: center;"><font style="font-weight: bold;"><font style="text-transform: uppercase;">Exhibit</font> 31.1</font><br>
    </div>
    <div style="text-align: center; font-weight: bold;">RULE 13a-14(a) CERTIFICATION</div>
    <div><br>
    </div>
    <div style="text-align: justify; color: #000000;">I, <font style="font-weight: bold;">Johan Hedberg</font>, certify that:</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z229aa4ab02cd4185a0e3d3e8f4d28ca3">

        <tr>
          <td style="width: 13.5pt;"><br>
          </td>
          <td style="width: 18pt; vertical-align: top; color: #000000;">1.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">I have reviewed this quarterly report on Form 10-Q of Tandy Leather Factory, Inc.&#160; Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact
              necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z6f9294552c5b43179ce376477f9bf1a3">

        <tr>
          <td style="width: 13.5pt;"><br>
          </td>
          <td style="width: 18pt; vertical-align: top; color: #000000;">2.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">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;</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z2293dc6d62874061b4a5436502e0f445">

        <tr>
          <td style="width: 13.5pt;"><br>
          </td>
          <td style="width: 18pt; vertical-align: top; color: #000000;">3.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">The registrant's other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal
              control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z559f76010d334c0cbe55569a83df231e">

        <tr>
          <td style="width: 40.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">a.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">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;</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z6a461a7d63f44d38a59c01de08dd4898">

        <tr>
          <td style="width: 40.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">b.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">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;</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z359c2de6984546318bca5c539f88f9d6">

        <tr>
          <td style="width: 40.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">c.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">Evaluated the effectiveness of the registrant'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</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="za717b670cde545f7870113df6b60b078">

        <tr>
          <td style="width: 40.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">d.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's first fiscal quarter that has materially affected, or is reasonably likely
              to materially affect, the registrant's internal control over financial reporting; and</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="zc3a506c52823451dbb35119f2de31993">

        <tr>
          <td style="width: 13.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">4.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the Audit Committee of the
              registrant&#8217;s Board of Directors (or persons performing the equivalent functions):</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="z24575c8391ef406b93e13e8b2100c35d">

        <tr>
          <td style="width: 40.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">a.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record,
              process, summarize and report financial information; and</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;" class="DSPFListTable" id="zcff6ddabb3c94d83aebc0a88b414c791">

        <tr>
          <td style="width: 40.5pt;"><br>
          </td>
          <td style="width: 22.5pt; vertical-align: top; color: #000000;">b.</td>
          <td style="width: auto; vertical-align: top; text-align: justify;">
            <div style="color: rgb(0, 0, 0);">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal controls over financial reporting.</div>
          </td>
        </tr>

    </table>
    <div>&#160;</div>
    <table cellspacing="0" cellpadding="0" border="0" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;" id="z8e396029ef5b4f3bb24f123bf79af700">

        <tr>
          <td style="width: 50%; vertical-align: top;">
            <div style="text-align: justify; color: rgb(0, 0, 0);">Date: May 12, 2025</div>
          </td>
          <td style="width: 3%; vertical-align: top;">
            <div style="text-align: justify; color: rgb(0, 0, 0);">By:</div>
          </td>
          <td style="width: 47%; vertical-align: top;">
            <div style="text-align: justify; color: rgb(0, 0, 0);"><u>/s/ <a name="z_Hlk195542166"></a>Johan Hedberg</u></div>
          </td>
        </tr>
        <tr>
          <td style="width: 50%; vertical-align: top;">&#160;</td>
          <td colspan="2" rowspan="1" style="width: 3%; vertical-align: top;">
            <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold; margin-left: 36pt;">Johan Hedberg</div>
          </td>
        </tr>
        <tr>
          <td style="width: 50%; vertical-align: top;">&#160;</td>
          <td colspan="2" rowspan="1" style="width: 3%; vertical-align: top;">
            <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold; margin-left: 36pt;">Chief Executive Officer</div>
          </td>
        </tr>
        <tr>
          <td style="width: 50%; vertical-align: top;">&#160;</td>
          <td colspan="2" rowspan="1" style="width: 3%; vertical-align: top;">
            <div style="text-align: justify; color: rgb(0, 0, 0); margin-left: 36pt;">(principal executive officer and principal financial officer)</div>
          </td>
        </tr>

    </table>
    <div> <br>
    </div>
    <div> <br>
    </div>
    <div>
      <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"> </div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>ef20047588_ex32-1.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<html>
  <head>
    <title></title>
    <!-- Licensed to: Broadridge
         Document created using Broadridge PROfile 25.3.2.5298
         Copyright 1995 - 2025 Broadridge -->
  </head>
<body bgcolor="#ffffff" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000;">
  <div>
    <hr noshade="noshade" align="center" style="height: 4px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;">
    <div>
      <div style="text-align: center; font-weight: bold;">EXHIBIT 32.1</div>
      <div style="text-align: center; font-weight: bold;"> <br>
      </div>
      <div style="text-align: center; font-weight: bold;">Certification Pursuant to 18 U.S.C. Section 1350,</div>
      <div style="text-align: center; font-weight: bold;">as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</div>
      <div><br>
      </div>
      <div style="text-align: justify;">In connection with the Quarterly Report on Form 10-Q of Tandy Leather Factory, Inc. (the &#8220;Company&#8221;) for the quarter ended March 31, 2025, as filed with the United States Securities and Exchange Commission on the date
        hereof (the "Report"), each of the undersigned officers 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:</div>
      <div><br>
      </div>
      <table cellspacing="0" cellpadding="0" id="z24368a5a7d484e82929036a2546cefc7" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">

          <tr>
            <td style="width: 18pt;"><br>
            </td>
            <td style="width: 18pt; vertical-align: top;">i.</td>
            <td style="width: auto; vertical-align: top; text-align: justify;">
              <div>The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and</div>
            </td>
          </tr>

      </table>
      <div><br>
      </div>
      <table cellspacing="0" cellpadding="0" id="zebac79a190674a899733c39fe512e2f0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000;">

          <tr>
            <td style="width: 18pt;"><br>
            </td>
            <td style="width: 18pt; vertical-align: top;">ii.</td>
            <td style="width: auto; vertical-align: top; text-align: justify;">
              <div>The information contained in the Report fully presents, in all material respects, the financial condition and results of operations of the Company as of the dates and for the periods expressed in the Report.</div>
            </td>
          </tr>

      </table>
      <div><br>
      </div>
      <table cellspacing="0" cellpadding="0" border="0" id="z1ab8d86c190342fa8b77db5200cc7068" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; border-collapse: collapse; text-align: left; color: #000000;">

          <tr>
            <td style="width: 50%; vertical-align: top;">
              <div style="text-align: justify; color: rgb(0, 0, 0);">Date: May 12, 2025</div>
            </td>
            <td style="width: 3%; vertical-align: top;">
              <div style="text-align: justify; color: rgb(0, 0, 0);">By:</div>
            </td>
            <td style="width: 47%; vertical-align: top;">
              <div style="text-align: justify; color: rgb(0, 0, 0);"><u>/s/ Johan Hedberg</u></div>
            </td>
          </tr>
          <tr>
            <td style="width: 50%; vertical-align: top;">&#160;</td>
            <td style="width: 3%; vertical-align: top;" rowspan="1" colspan="2">
              <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold; margin-left: 27pt;">Johan Hedberg</div>
            </td>
          </tr>
          <tr>
            <td style="width: 50%; vertical-align: top;">&#160;</td>
            <td style="width: 3%; vertical-align: top;" rowspan="1" colspan="2">
              <div style="text-align: justify; color: rgb(0, 0, 0); font-weight: bold; margin-left: 27pt;">Chief Executive Officer</div>
            </td>
          </tr>
          <tr>
            <td style="width: 50%; vertical-align: top;">&#160;</td>
            <td style="width: 3%; vertical-align: top;" rowspan="1" colspan="2">
              <div style="text-align: justify; color: rgb(0, 0, 0); margin-left: 27pt;">(principal executive officer and principal financial officer)</div>
            </td>
          </tr>

      </table>
      <div><br>
      </div>
      <div><br>
      </div>
      <div>
        <hr noshade="noshade" align="center" style="height: 2px; color: #000000; background-color: #000000; text-align: center; margin-left: auto; margin-right: auto; border: none;"></div>
      <div><br>
      </div>
    </div>
  </div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>tlfa-20250331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 25.3.2.5298 Broadridge-->
<xs:schema targetNamespace="http://tandyleather.com/20250331" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tlfa="http://tandyleather.com/20250331" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:us-types="http://fasb.org/us-types/2024" xmlns:srt-types="http://fasb.org/srt-types/2024">
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xlink:type="simple" xlink:href="tlfa-20250331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tlfa-20250331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tlfa-20250331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:linkbaseRef xlink:type="simple" xlink:href="tlfa-20250331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" />
      <link:roleType roleURI="http://tandyleather.com/role/DocumentAndEntityInformation" id="DocumentAndEntityInformation">
        <link:definition>000100 - 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://tandyleather.com/role/ConsolidatedBalanceSheets" id="ConsolidatedBalanceSheets">
        <link:definition>010000 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical" id="ConsolidatedBalanceSheetsParenthetical">
        <!--Parent Role: Consolidated Balance Sheets-->
        <link:definition>010100 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" id="ConsolidatedStatementsOfOperationsAndComprehensiveIncome">
        <link:definition>020000 - Statement - Consolidated Statements of Operations and Comprehensive Income</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://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" id="ConsolidatedStatementsOfCashFlows">
        <link:definition>030000 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity" id="ConsolidatedStatementsOfStockholdersEquity">
        <link:definition>040000 - Statement - 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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies" id="BasisOfPresentationAndCertainSignificantAccountingPolicies">
        <link:definition>060100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN 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://tandyleather.com/role/NotesPayableAndLongtermDebt" id="NotesPayableAndLongtermDebt">
        <link:definition>060200 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT</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://tandyleather.com/role/IncomeTax" id="IncomeTax">
        <link:definition>060300 - Disclosure - INCOME TAX</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://tandyleather.com/role/StockbasedCompensation" id="StockbasedCompensation">
        <link:definition>060400 - Disclosure - STOCK-BASED COMPENSATION</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/EarningsPerShare" id="EarningsPerShare">
        <link:definition>060500 - Disclosure - EARNINGS PER SHARE</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
        <link:definition>060600 - 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://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases" id="ShareRepurchaseProgramAndShareRepurchases">
        <link:definition>060700 - Disclosure - SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</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://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment" id="SalesOfCorporateHeadquartersNewCeoEmployment">
        <link:definition>060800 - Disclosure - SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>070100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN 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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesTables">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>080100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (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://tandyleather.com/role/StockbasedCompensationTables" id="StockbasedCompensationTables">
        <!--Parent Role: STOCK-BASED COMPENSATION-->
        <link:definition>080400 - Disclosure - STOCK-BASED COMPENSATION (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/EarningsPerShareTables" id="EarningsPerShareTables">
        <!--Parent Role: EARNINGS PER SHARE-->
        <link:definition>080500 - Disclosure - EARNINGS PER SHARE (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables" id="SalesOfCorporateHeadquartersNewCeoEmploymentTables">
        <!--Parent Role: SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT-->
        <link:definition>080800 - Disclosure - SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Basis of Presentation (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090102 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition and Discounts (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090104 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Discounts (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090106 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090108 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Inventory (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090110 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090112 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails" id="BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails">
        <!--Parent Role: BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES-->
        <link:definition>090114 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Other 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://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" id="NotesPayableAndLongtermDebtDetails">
        <!--Parent Role: NOTES PAYABLE AND LONG-TERM DEBT-->
        <link:definition>090200 - Disclosure - NOTES PAYABLE AND LONG-TERM 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://tandyleather.com/role/IncomeTaxDetails" id="IncomeTaxDetails">
        <!--Parent Role: INCOME TAX-->
        <link:definition>090300 - Disclosure - INCOME TAX (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://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails" id="StockbasedCompensation2013And2023RestrictedStockPlansDetails">
        <!--Parent Role: STOCK-BASED COMPENSATION-->
        <link:definition>090400 - Disclosure - STOCK-BASED COMPENSATION, 2013 and 2023 Restricted Stock Plans (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://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails" id="StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails">
        <!--Parent Role: STOCK-BASED COMPENSATION-->
        <link:definition>090402 - Disclosure - STOCK-BASED COMPENSATION, Summary of Activity for Non-vested Restricted Stock Unit Awards (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://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" id="StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails">
        <!--Parent Role: STOCK-BASED COMPENSATION-->
        <link:definition>090404 - Disclosure - STOCK-BASED COMPENSATION, Non-vested Service-based Restricted Stock Unit Awards (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://tandyleather.com/role/EarningsPerShareDetails" id="EarningsPerShareDetails">
        <!--Parent Role: EARNINGS PER SHARE-->
        <link:definition>090500 - Disclosure - 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://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails" id="ShareRepurchaseProgramAndShareRepurchasesDetails">
        <!--Parent Role: SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES-->
        <link:definition>090700 - Disclosure - SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES (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://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails" id="SalesOfCorporateHeadquartersNewCeoEmploymentDetails">
        <!--Parent Role: SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT-->
        <link:definition>090800 - Disclosure - SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:import namespace="http://fasb.org/us-gaap/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/dei/2024" schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/country/2024" schemaLocation="https://xbrl.sec.gov/country/2024/country-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/currency/2024" schemaLocation="https://xbrl.sec.gov/currency/2024/currency-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/exch/2024" schemaLocation="https://xbrl.sec.gov/exch/2024/exch-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/naics/2024" schemaLocation="https://xbrl.sec.gov/naics/2024/naics-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/sic/2024" schemaLocation="https://xbrl.sec.gov/sic/2024/sic-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/role/net" schemaLocation="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/stpr/2024" schemaLocation="https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
  <xs:import namespace="http://www.xbrl.org/2004/ref" schemaLocation="http://www.xbrl.org/2004/ref-2004-08-10.xsd" />
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" />
  <xs:import namespace="http://fasb.org/us-types/2024" schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/2009/arcrole/fact-explanatoryFact" schemaLocation="http://www.xbrl.org/lrr/arcrole/factExplanatory-2009-12-16.xsd" />
  <xs:import namespace="http://fasb.org/srt/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd" />
  <xs:import namespace="http://fasb.org/srt-types/2024" schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd" />
  <xs:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/ecd/2024" schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd" />
  <xs:import namespace="http://xbrl.sec.gov/cyd/2024" schemaLocation="https://xbrl.sec.gov/cyd/2024/cyd-2024.xsd" />
  <xs:element name="JPMorganChaseBankNAMember" id="tlfa_JPMorganChaseBankNAMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AccountsReceivableAndExpectedCreditLossesAbstract" id="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="FairValueOfFinancialInstrumentsAbstract" id="tlfa_FairValueOfFinancialInstrumentsAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" id="tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ShareRepurchaseProgramAndShareRepurchasesTextBlock" id="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="StockRepurchaseProgramAbstract" id="tlfa_StockRepurchaseProgramAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ShareRepurchaseProgramMember" id="tlfa_ShareRepurchaseProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="RestrictedStockAndRestrictedStockUnitsMember" id="tlfa_RestrictedStockAndRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" id="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" type="xbrli:sharesItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="ServicedBasedRestrictedStockUnitsRSUsMember" id="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="TwoThousandAndTwentyThreeRestrictedStockPlanMember" id="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="TwoThousandAndThirteenRestrictedStockPlanMember" id="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="NonEmployeeDirectorMember" id="tlfa_NonEmployeeDirectorMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="RevenueRecognitionDiscountsPolicyTextBlock" id="tlfa_RevenueRecognitionDiscountsPolicyTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="DiscountsAbstract" id="tlfa_DiscountsAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="NumberOfClassesOfCustomerDiscounts" id="tlfa_NumberOfClassesOfCustomerDiscounts" type="xbrli:integerItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="GiftCardRedemptionPeriod" id="tlfa_GiftCardRedemptionPeriod" type="xbrli:durationItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="InventoryMerchandiseExpectedToBeReturned" id="tlfa_InventoryMerchandiseExpectedToBeReturned" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="AllOtherCountriesMember" id="tlfa_AllOtherCountriesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="OtherCountriesMember" id="tlfa_OtherCountriesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="AccruedLiabilitiesAndOtherLiabilitiesMember" id="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="NumberOfStoresTemporarilyClosed" id="tlfa_NumberOfStoresTemporarilyClosed" type="xbrli:integerItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" />
  <xs:element name="BusinessDescriptionAbstract" id="tlfa_BusinessDescriptionAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" id="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="PerformanceBasedRestrictedStockUnitsRSUsMember" id="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" id="tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" id="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="duration" />
  <xs:element name="SalesAndDisposalOfHeadquarterAbstract" id="tlfa_SalesAndDisposalOfHeadquarterAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
  <xs:element name="HeadquarterAssetsNetBookValue" id="tlfa_HeadquarterAssetsNetBookValue" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" nillable="true" abstract="false" xbrli:periodType="instant" xbrli:balance="debit" />
  <xs:element name="TermSecuredOvernightFinancingRateSOFRRateMember" id="tlfa_TermSecuredOvernightFinancingRateSOFRRateMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" nillable="true" abstract="true" xbrli:periodType="duration" />
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>tlfa-20250331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 25.3.2.5298 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <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:roleRef roleURI="http://tandyleather.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfOperationsAndComprehensiveIncome" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedBalanceSheets" />
  <link:calculationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonValue" xlink:label="TreasuryStockCommonValue" xlink:title="TreasuryStockCommonValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="TreasuryStockCommonValue" xlink:title="calculation: StockholdersEquity to TreasuryStockCommonValue" order="4.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="CommonStockValue" xlink:title="calculation: StockholdersEquity to CommonStockValue" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="RetainedEarningsAccumulatedDeficit" xlink:title="calculation: StockholdersEquity to RetainedEarningsAccumulatedDeficit" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="AdditionalPaidInCapital" xlink:title="AdditionalPaidInCapital" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="AdditionalPaidInCapital" xlink:title="calculation: StockholdersEquity to AdditionalPaidInCapital" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="StockholdersEquity" xlink:to="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="calculation: StockholdersEquity to AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="6.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="StockholdersEquity" xlink:title="calculation: LiabilitiesAndStockholdersEquity to StockholdersEquity" order="11.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxesPayableCurrent" xlink:label="TaxesPayableCurrent" xlink:title="TaxesPayableCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="TaxesPayableCurrent" xlink:title="calculation: LiabilitiesCurrent to TaxesPayableCurrent" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableTradeCurrent" xlink:label="AccountsPayableTradeCurrent" xlink:title="AccountsPayableTradeCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="AccountsPayableTradeCurrent" xlink:title="calculation: LiabilitiesCurrent to AccountsPayableTradeCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:label="AccruedLiabilitiesAndOtherLiabilities" xlink:title="AccruedLiabilitiesAndOtherLiabilities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="AccruedLiabilitiesAndOtherLiabilities" xlink:title="calculation: LiabilitiesCurrent to AccruedLiabilitiesAndOtherLiabilities" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesCurrent" xlink:to="OperatingLeaseLiabilityCurrent" xlink:title="calculation: LiabilitiesCurrent to OperatingLeaseLiabilityCurrent" order="5.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="LiabilitiesCurrent" xlink:title="calculation: LiabilitiesAndStockholdersEquity to LiabilitiesCurrent" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="calculation: LiabilitiesAndStockholdersEquity to OperatingLeaseLiabilityNoncurrent" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="LiabilityForUncertainTaxPositionsNoncurrent" xlink:title="LiabilityForUncertainTaxPositionsNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="LiabilityForUncertainTaxPositionsNoncurrent" xlink:title="calculation: LiabilitiesAndStockholdersEquity to LiabilityForUncertainTaxPositionsNoncurrent" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="calculation: LiabilitiesAndStockholdersEquity to OtherLiabilitiesNoncurrent" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="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="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="PrepaidExpenseCurrent" xlink:title="PrepaidExpenseCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="PrepaidExpenseCurrent" xlink:title="calculation: AssetsCurrent to PrepaidExpenseCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="AccountsReceivableNetCurrent" xlink:title="calculation: AssetsCurrent to AccountsReceivableNetCurrent" order="7.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="calculation: AssetsCurrent to CashAndCashEquivalentsAtCarryingValue" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="InventoryNet" xlink:title="calculation: AssetsCurrent to InventoryNet" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="IncomeTaxesReceivable" xlink:title="IncomeTaxesReceivable" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="IncomeTaxesReceivable" xlink:title="calculation: AssetsCurrent to IncomeTaxesReceivable" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AssetsCurrent" xlink:to="OtherAssetsCurrent" xlink:title="calculation: AssetsCurrent to OtherAssetsCurrent" order="4.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="AssetsCurrent" xlink:title="calculation: Assets to AssetsCurrent" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="calculation: PropertyPlantAndEquipmentNet to AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="PropertyPlantAndEquipmentGross" xlink:title="calculation: PropertyPlantAndEquipmentNet to PropertyPlantAndEquipmentGross" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="calculation: Assets to PropertyPlantAndEquipmentNet" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="OperatingLeaseRightOfUseAsset" xlink:title="calculation: Assets to OperatingLeaseRightOfUseAsset" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="calculation: Assets to DeferredIncomeTaxAssetsNet" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="Assets" xlink:to="OtherAssetsNoncurrent" xlink:title="calculation: Assets to OtherAssetsNoncurrent" order="4.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="calculation: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="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="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetIncomeLoss" xlink:to="IncomeTaxExpenseBenefit" xlink:title="calculation: NetIncomeLoss to IncomeTaxExpenseBenefit" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="NonoperatingIncomeExpense" xlink:title="NonoperatingIncomeExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="GainLossOnDispositionOfAssets" xlink:title="GainLossOnDispositionOfAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NonoperatingIncomeExpense" xlink:to="GainLossOnDispositionOfAssets" xlink:title="calculation: NonoperatingIncomeExpense to GainLossOnDispositionOfAssets" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="InterestIncomeExpenseNet" xlink:title="InterestIncomeExpenseNet" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NonoperatingIncomeExpense" xlink:to="InterestIncomeExpenseNet" xlink:title="calculation: NonoperatingIncomeExpense to InterestIncomeExpenseNet" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NonoperatingIncomeExpense" xlink:to="OtherNonoperatingIncomeExpense" xlink:title="calculation: NonoperatingIncomeExpense to OtherNonoperatingIncomeExpense" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="NonoperatingIncomeExpense" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to NonoperatingIncomeExpense" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="CostOfGoodsAndServicesSold" xlink:title="CostOfGoodsAndServicesSold" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="GrossProfit" xlink:to="CostOfGoodsAndServicesSold" xlink:title="calculation: GrossProfit to CostOfGoodsAndServicesSold" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="GrossProfit" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="calculation: GrossProfit to RevenueFromContractWithCustomerExcludingAssessedTax" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="GrossProfit" xlink:title="calculation: OperatingIncomeLoss to GrossProfit" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingCostsAndExpenses" xlink:label="OperatingCostsAndExpenses" xlink:title="OperatingCostsAndExpenses" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="OperatingIncomeLoss" xlink:to="OperatingCostsAndExpenses" xlink:title="calculation: OperatingIncomeLoss to OperatingCostsAndExpenses" order="2.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="OperatingIncomeLoss" xlink:title="calculation: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to OperatingIncomeLoss" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetIncomeLoss" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="calculation: NetIncomeLoss to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="NetIncomeLoss" xlink:title="calculation: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to NetIncomeLoss" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to PaymentsToAcquirePropertyPlantAndEquipment" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="ProceedsFromSaleOfProductiveAssets" xlink:title="ProceedsFromSaleOfProductiveAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="ProceedsFromSaleOfProductiveAssets" xlink:title="calculation: NetCashProvidedByUsedInInvestingActivities to ProceedsFromSaleOfProductiveAssets" order="2.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInInvestingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInInvestingActivities" order="1.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="FinanceLeasePrincipalPayments" xlink:title="FinanceLeasePrincipalPayments" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="FinanceLeasePrincipalPayments" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to FinanceLeasePrincipalPayments" order="5.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="PaymentsOfDividendsCommonStock" xlink:title="PaymentsOfDividendsCommonStock" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="PaymentsOfDividendsCommonStock" xlink:title="calculation: NetCashProvidedByUsedInFinancingActivities to PaymentsOfDividendsCommonStock" order="4.0" weight="-1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInFinancingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInFinancingActivities" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="4.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="NetIncomeLoss" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to NetIncomeLoss" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="GainLossOnDispositionOfAssets" xlink:title="GainLossOnDispositionOfAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="GainLossOnDispositionOfAssets" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to GainLossOnDispositionOfAssets" order="14.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInInventories" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInInventories" order="1.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:label="IncreaseDecreaseInOtherNoncurrentAssets" xlink:title="IncreaseDecreaseInOtherNoncurrentAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInOtherNoncurrentAssets" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInOtherNoncurrentAssets" order="13.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="IncreaseDecreaseInAccountsPayable" xlink:title="IncreaseDecreaseInAccountsPayable" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccountsPayable" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccountsPayable" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="IncreaseDecreaseInOperatingLeaseLiability" xlink:title="IncreaseDecreaseInOperatingLeaseLiability" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInOperatingLeaseLiability" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInOperatingLeaseLiability" order="15.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccountsReceivable" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccountsReceivable" order="0.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="IncreaseDecreaseInDeferredIncomeTaxes" xlink:title="IncreaseDecreaseInDeferredIncomeTaxes" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInDeferredIncomeTaxes" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInDeferredIncomeTaxes" order="7.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:label="IncreaseDecreaseInOtherCurrentAssets" xlink:title="IncreaseDecreaseInOtherCurrentAssets" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInOtherCurrentAssets" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInOtherCurrentAssets" order="4.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="IncreaseDecreaseInPrepaidExpense" xlink:title="IncreaseDecreaseInPrepaidExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInPrepaidExpense" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInPrepaidExpense" order="2.0" weight="-1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="IncreaseDecreaseInAccruedLiabilities" xlink:title="IncreaseDecreaseInAccruedLiabilities" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="IncreaseDecreaseInAccruedLiabilities" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to IncreaseDecreaseInAccruedLiabilities" order="6.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciation" xlink:label="CostOfGoodsAndServicesSoldDepreciation" xlink:title="CostOfGoodsAndServicesSoldDepreciation" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="CostOfGoodsAndServicesSoldDepreciation" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to CostOfGoodsAndServicesSoldDepreciation" order="8.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="DeferredIncomeTaxesAndTaxCredits" xlink:title="DeferredIncomeTaxesAndTaxCredits" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="DeferredIncomeTaxesAndTaxCredits" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to DeferredIncomeTaxesAndTaxCredits" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="ShareBasedCompensation" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to ShareBasedCompensation" order="11.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:title="OperatingLeaseRightOfUseAssetAmortizationExpense" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:title="calculation: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to OperatingLeaseRightOfUseAssetAmortizationExpense" order="9.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:title="calculation: NetCashProvidedByUsedInOperatingActivities to AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" order="1.0" weight="1.0" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="NetCashProvidedByUsedInOperatingActivities" xlink:title="calculation: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to NetCashProvidedByUsedInOperatingActivities" order="2.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherInventoryInTransit" xlink:label="OtherInventoryInTransit" xlink:title="OtherInventoryInTransit" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="OtherInventoryInTransit" xlink:title="calculation: InventoryNet to OtherInventoryInTransit" order="2.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="InventoryFinishedGoods" xlink:title="InventoryFinishedGoods" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryFinishedGoods" xlink:title="calculation: InventoryNet to InventoryFinishedGoods" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcessAndRawMaterials" xlink:label="InventoryWorkInProcessAndRawMaterials" xlink:title="InventoryWorkInProcessAndRawMaterials" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="InventoryNet" xlink:to="InventoryWorkInProcessAndRawMaterials" xlink:title="calculation: InventoryNet to InventoryWorkInProcessAndRawMaterials" order="1.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="calculation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" order="3.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="calculation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="calculation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" order="5.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="calculation: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" order="4.0" weight="1.0" />
  </link:calculationLink>
  <link:calculationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="calculation: WeightedAverageNumberOfDilutedSharesOutstanding to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="0.0" weight="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="calculation: WeightedAverageNumberOfDilutedSharesOutstanding to WeightedAverageNumberOfSharesOutstandingBasic" order="1.0" weight="1.0" />
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>tlfa-20250331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 25.3.2.5298 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:t1="http://xbrl.org/2005/xbrldt">
  <link:roleRef roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:type="simple" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd#eedm" />
  <link:roleRef roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#SalesOfCorporateHeadquartersNewCeoEmploymentDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ShareRepurchaseProgramAndShareRepurchasesDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensation2013And2023RestrictedStockPlansDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/IncomeTaxDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#IncomeTaxDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#NotesPayableAndLongtermDebtDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#SalesOfCorporateHeadquartersNewCeoEmploymentTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShareTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies" />
  <link:roleRef roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment" xlink:type="simple" xlink:href="tlfa-20250331.xsd#SalesOfCorporateHeadquartersNewCeoEmployment" />
  <link:roleRef roleURI="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ShareRepurchaseProgramAndShareRepurchases" />
  <link:roleRef roleURI="http://tandyleather.com/role/CommitmentsAndContingencies" xlink:type="simple" xlink:href="tlfa-20250331.xsd#CommitmentsAndContingencies" />
  <link:roleRef roleURI="http://tandyleather.com/role/EarningsPerShare" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShare" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensation" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensation" />
  <link:roleRef roleURI="http://tandyleather.com/role/IncomeTax" xlink:type="simple" xlink:href="tlfa-20250331.xsd#IncomeTax" />
  <link:roleRef roleURI="http://tandyleather.com/role/NotesPayableAndLongtermDebt" xlink:type="simple" xlink:href="tlfa-20250331.xsd#NotesPayableAndLongtermDebt" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPolicies" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfStockholdersEquity" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfOperationsAndComprehensiveIncome" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedBalanceSheets" />
  <link:roleRef roleURI="http://tandyleather.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="tlfa-20250331.xsd#DocumentAndEntityInformation" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" />
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/DocumentAndEntityInformation" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedBalanceSheets" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="definition: StatementLineItems to IncreaseDecreaseInStockholdersEquityRollForward" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockholdersEquity" xlink:title="definition: StatementLineItems to StockholdersEquity" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="SharesIssued" xlink:title="SharesIssued" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="SharesIssued" xlink:title="definition: StatementLineItems to SharesIssued" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="definition: StatementLineItems to AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodValueRestrictedStockAwardGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:title="definition: StatementLineItems to StockIssuedDuringPeriodValueRestrictedStockAwardGross" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="definition: StatementLineItems to StockIssuedDuringPeriodSharesRestrictedStockAwardGross" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="NetIncomeLoss" xlink:title="definition: StatementLineItems to NetIncomeLoss" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsCommonStockCash" xlink:label="DividendsCommonStockCash" xlink:title="DividendsCommonStockCash" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="DividendsCommonStockCash" xlink:title="definition: StatementLineItems to DividendsCommonStockCash" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="StatementLineItems" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="definition: StatementLineItems to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="StatementLineItems" xlink:to="StatementTable" xlink:title="definition: StatementLineItems to StatementTable" order="10.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="StatementTable" xlink:to="StatementEquityComponentsAxis" xlink:title="definition: StatementTable to StatementEquityComponentsAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain_2" xlink:title="EquityComponentDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain_2" xlink:title="definition: StatementEquityComponentsAxis to EquityComponentDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="CommonStockMember" xlink:title="definition: EquityComponentDomain to CommonStockMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AdditionalPaidInCapitalMember" xlink:title="definition: EquityComponentDomain to AdditionalPaidInCapitalMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="TreasuryStockCommonMember" xlink:title="definition: EquityComponentDomain to TreasuryStockCommonMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="RetainedEarningsMember" xlink:title="definition: EquityComponentDomain to RetainedEarningsMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityComponentDomain" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="definition: EquityComponentDomain to AccumulatedOtherComprehensiveIncomeMember" order="5.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/NotesPayableAndLongtermDebt" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/IncomeTax" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensation" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShare" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/CommitmentsAndContingencies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShareTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="SegmentReportingInformationLineItems" xlink:title="SegmentReportingInformationLineItems" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_BusinessDescriptionAbstract" xlink:label="BusinessDescriptionAbstract" xlink:title="BusinessDescriptionAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentReportingInformationLineItems" xlink:to="BusinessDescriptionAbstract" xlink:title="definition: SegmentReportingInformationLineItems to BusinessDescriptionAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfStores" xlink:label="NumberOfStores" xlink:title="NumberOfStores" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentReportingInformationLineItems" xlink:to="NumberOfStores" xlink:title="definition: SegmentReportingInformationLineItems to NumberOfStores" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NumberOfStoresTemporarilyClosed" xlink:label="NumberOfStoresTemporarilyClosed" xlink:title="NumberOfStoresTemporarilyClosed" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentReportingInformationLineItems" xlink:to="NumberOfStoresTemporarilyClosed" xlink:title="definition: SegmentReportingInformationLineItems to NumberOfStoresTemporarilyClosed" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="NumberOfOperatingSegments" xlink:title="NumberOfOperatingSegments" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentReportingInformationLineItems" xlink:to="NumberOfOperatingSegments" xlink:title="definition: SegmentReportingInformationLineItems to NumberOfOperatingSegments" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="NumberOfReportableSegments" xlink:title="NumberOfReportableSegments" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentReportingInformationLineItems" xlink:to="NumberOfReportableSegments" xlink:title="definition: SegmentReportingInformationLineItems to NumberOfReportableSegments" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:title="ScheduleOfSegmentReportingInformationBySegmentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="SegmentReportingInformationLineItems" xlink:to="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:title="definition: SegmentReportingInformationLineItems to ScheduleOfSegmentReportingInformationBySegmentTable" order="6.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="StatementGeographicalAxis" xlink:title="definition: ScheduleOfSegmentReportingInformationBySegmentTable to StatementGeographicalAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain_2" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain_2" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="definition: SegmentGeographicalDomain to US" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CA" xlink:label="CA" xlink:title="CA" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="CA" xlink:title="definition: SegmentGeographicalDomain to CA" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_ES" xlink:label="ES" xlink:title="ES" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="ES" xlink:title="definition: SegmentGeographicalDomain to ES" order="3.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueFromContractWithCustomerAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to RevenueFromContractWithCustomerAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueAbstract" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="definition: DisaggregationOfRevenueLineItems to RevenueFromContractWithCustomerExcludingAssessedTax" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="ConcentrationRiskPercentage1" xlink:title="ConcentrationRiskPercentage1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ConcentrationRiskPercentage1" xlink:title="definition: DisaggregationOfRevenueLineItems to ConcentrationRiskPercentage1" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:label="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:title="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_InventoryMerchandiseExpectedToBeReturned" xlink:label="InventoryMerchandiseExpectedToBeReturned" xlink:title="InventoryMerchandiseExpectedToBeReturned" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="InventoryMerchandiseExpectedToBeReturned" xlink:title="definition: DisaggregationOfRevenueLineItems to InventoryMerchandiseExpectedToBeReturned" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_GiftCardRedemptionPeriod" xlink:label="GiftCardRedemptionPeriod" xlink:title="GiftCardRedemptionPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="GiftCardRedemptionPeriod" xlink:title="definition: DisaggregationOfRevenueLineItems to GiftCardRedemptionPeriod" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="ContractWithCustomerLiability" xlink:title="ContractWithCustomerLiability" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerLiability" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerLiability" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="ContractWithCustomerLiabilityRevenueRecognized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="definition: DisaggregationOfRevenueLineItems to ContractWithCustomerLiabilityRevenueRecognized" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredRevenueRevenueRecognized1" xlink:label="DeferredRevenueRevenueRecognized1" xlink:title="DeferredRevenueRevenueRecognized1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DeferredRevenueRevenueRecognized1" xlink:title="definition: DisaggregationOfRevenueLineItems to DeferredRevenueRevenueRecognized1" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueTable" xlink:title="definition: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueTable" order="11.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="RangeAxis" xlink:title="definition: DisaggregationOfRevenueTable to RangeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="StatementGeographicalAxis" xlink:title="definition: DisaggregationOfRevenueTable to StatementGeographicalAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain_2" xlink:title="SegmentGeographicalDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain_2" xlink:title="definition: StatementGeographicalAxis to SegmentGeographicalDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="definition: SegmentGeographicalDomain to US" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CA" xlink:label="CA" xlink:title="CA" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="CA" xlink:title="definition: SegmentGeographicalDomain to CA" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_OtherCountriesMember" xlink:label="OtherCountriesMember" xlink:title="OtherCountriesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="OtherCountriesMember" xlink:title="definition: SegmentGeographicalDomain to OtherCountriesMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AllOtherCountriesMember" xlink:label="AllOtherCountriesMember" xlink:title="AllOtherCountriesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="SegmentGeographicalDomain" xlink:to="AllOtherCountriesMember" xlink:title="definition: SegmentGeographicalDomain to AllOtherCountriesMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="ConcentrationRiskByTypeAxis" xlink:title="ConcentrationRiskByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="ConcentrationRiskByTypeAxis" xlink:title="definition: DisaggregationOfRevenueTable to ConcentrationRiskByTypeAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain" xlink:title="ConcentrationRiskTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="ConcentrationRiskTypeDomain" xlink:title="definition: ConcentrationRiskByTypeAxis to ConcentrationRiskTypeDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain_2" xlink:title="ConcentrationRiskTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="ConcentrationRiskTypeDomain_2" xlink:title="definition: ConcentrationRiskByTypeAxis to ConcentrationRiskTypeDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="GeographicConcentrationRiskMember" xlink:title="GeographicConcentrationRiskMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskTypeDomain" xlink:to="GeographicConcentrationRiskMember" xlink:title="definition: ConcentrationRiskTypeDomain to GeographicConcentrationRiskMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="ConcentrationRiskByBenchmarkAxis" xlink:title="definition: DisaggregationOfRevenueTable to ConcentrationRiskByBenchmarkAxis" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain" xlink:title="definition: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain_2" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain_2" xlink:title="definition: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="SalesRevenueNetMember" xlink:title="definition: ConcentrationRiskBenchmarkDomain to SalesRevenueNetMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="BalanceSheetLocationAxis" xlink:title="BalanceSheetLocationAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DisaggregationOfRevenueTable" xlink:to="BalanceSheetLocationAxis" xlink:title="definition: DisaggregationOfRevenueTable to BalanceSheetLocationAxis" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain" xlink:title="BalanceSheetLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="BalanceSheetLocationAxis" xlink:to="BalanceSheetLocationDomain" xlink:title="definition: BalanceSheetLocationAxis to BalanceSheetLocationDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain_2" xlink:title="BalanceSheetLocationDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="BalanceSheetLocationAxis" xlink:to="BalanceSheetLocationDomain_2" xlink:title="definition: BalanceSheetLocationAxis to BalanceSheetLocationDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:label="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:title="AccruedLiabilitiesAndOtherLiabilitiesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="BalanceSheetLocationDomain" xlink:to="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:title="definition: BalanceSheetLocationDomain to AccruedLiabilitiesAndOtherLiabilitiesMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:label="PropertyPlantAndEquipmentNetAbstract" xlink:title="PropertyPlantAndEquipmentNetAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentNetAbstract" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentNetAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="PropertyPlantAndEquipmentUsefulLife" xlink:title="PropertyPlantAndEquipmentUsefulLife" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentUsefulLife" xlink:title="definition: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentUsefulLife" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="definition: PropertyPlantAndEquipmentLineItems to ScheduleOfPropertyPlantAndEquipmentTable" order="3.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentByTypeAxis" xlink:title="definition: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentByTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain" xlink:title="definition: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain_2" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain_2" xlink:title="definition: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="MachineryAndEquipmentMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to MachineryAndEquipmentMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="FurnitureAndFixturesMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to FurnitureAndFixturesMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="VehiclesMember" xlink:title="VehiclesMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="VehiclesMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to VehiclesMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="BuildingAndBuildingImprovementsMember" xlink:title="definition: PropertyPlantAndEquipmentTypeDomain to BuildingAndBuildingImprovementsMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfPropertyPlantAndEquipmentTable to RangeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="FiniteLivedIntangibleAssetsLineItems" xlink:title="FiniteLivedIntangibleAssetsLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="FiniteLivedIntangibleAssetsNetAbstract" xlink:title="FiniteLivedIntangibleAssetsNetAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsNetAbstract" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsNetAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:title="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="AmortizationOfIntangibleAssets" xlink:title="AmortizationOfIntangibleAssets" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="AmortizationOfIntangibleAssets" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to AmortizationOfIntangibleAssets" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:title="ScheduleOfFiniteLivedIntangibleAssetsTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:title="definition: FiniteLivedIntangibleAssetsLineItems to ScheduleOfFiniteLivedIntangibleAssetsTable" order="9.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:title="FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:title="definition: ScheduleOfFiniteLivedIntangibleAssetsTable to FiniteLivedIntangibleAssetsByMajorClassAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:title="FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:title="definition: FiniteLivedIntangibleAssetsByMajorClassAxis to FiniteLivedIntangibleAssetsMajorClassNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="FiniteLivedIntangibleAssetsMajorClassNameDomain_2" xlink:title="FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="FiniteLivedIntangibleAssetsMajorClassNameDomain_2" xlink:title="definition: FiniteLivedIntangibleAssetsByMajorClassAxis to FiniteLivedIntangibleAssetsMajorClassNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntellectualPropertyMember" xlink:label="IntellectualPropertyMember" xlink:title="IntellectualPropertyMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="IntellectualPropertyMember" xlink:title="definition: FiniteLivedIntangibleAssetsMajorClassNameDomain to IntellectualPropertyMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfFiniteLivedIntangibleAssetsTable to RangeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="definition: DebtInstrumentLineItems to LineOfCreditFacilityMaximumBorrowingCapacity" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentBasisSpreadOnVariableRate1" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:label="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:title="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTerm" xlink:label="DebtInstrumentTerm" xlink:title="DebtInstrumentTerm" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTerm" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTerm" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="ProceedsFromLinesOfCredit" xlink:title="ProceedsFromLinesOfCredit" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="DebtInstrumentLineItems" xlink:to="ProceedsFromLinesOfCredit" xlink:title="definition: DebtInstrumentLineItems to ProceedsFromLinesOfCredit" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentTable" xlink:title="definition: DebtInstrumentLineItems to DebtInstrumentTable" order="7.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="LineOfCreditFacilityAxis" xlink:title="LineOfCreditFacilityAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="DebtInstrumentTable" xlink:to="LineOfCreditFacilityAxis" xlink:title="definition: DebtInstrumentTable to LineOfCreditFacilityAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="LineOfCreditFacilityLenderDomain" xlink:title="LineOfCreditFacilityLenderDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="LineOfCreditFacilityAxis" xlink:to="LineOfCreditFacilityLenderDomain" xlink:title="definition: LineOfCreditFacilityAxis to LineOfCreditFacilityLenderDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="LineOfCreditFacilityLenderDomain_2" xlink:title="LineOfCreditFacilityLenderDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="LineOfCreditFacilityAxis" xlink:to="LineOfCreditFacilityLenderDomain_2" xlink:title="definition: LineOfCreditFacilityAxis to LineOfCreditFacilityLenderDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_JPMorganChaseBankNAMember" xlink:label="JPMorganChaseBankNAMember" xlink:title="JPMorganChaseBankNAMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="LineOfCreditFacilityLenderDomain" xlink:to="JPMorganChaseBankNAMember" xlink:title="definition: LineOfCreditFacilityLenderDomain to JPMorganChaseBankNAMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/IncomeTaxDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="CommonStockCapitalSharesReservedForFutureIssuance" xlink:title="CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="CommonStockCapitalSharesReservedForFutureIssuance" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to CommonStockCapitalSharesReservedForFutureIssuance" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="5.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="PlanNameAxis" xlink:title="PlanNameAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="PlanNameAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to PlanNameAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="PlanNameDomain" xlink:title="PlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="PlanNameAxis" xlink:to="PlanNameDomain" xlink:title="definition: PlanNameAxis to PlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="PlanNameDomain_2" xlink:title="PlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="PlanNameAxis" xlink:to="PlanNameDomain_2" xlink:title="definition: PlanNameAxis to PlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" xlink:label="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:title="TwoThousandAndThirteenRestrictedStockPlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PlanNameDomain" xlink:to="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:title="definition: PlanNameDomain to TwoThousandAndThirteenRestrictedStockPlanMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:label="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:title="TwoThousandAndTwentyThreeRestrictedStockPlanMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="PlanNameDomain" xlink:to="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:title="definition: PlanNameDomain to TwoThousandAndTwentyThreeRestrictedStockPlanMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="RestrictedStockUnitsRSUMember" xlink:title="RestrictedStockUnitsRSUMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockUnitsRSUMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockUnitsRSUMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:label="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="ServicedBasedRestrictedStockUnitsRSUsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="definition: RestrictedStockUnitsRSUMember to ServicedBasedRestrictedStockUnitsRSUsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="TitleOfIndividualAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to TitleOfIndividualAxis" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="definition: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain_2" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain_2" xlink:title="definition: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NonEmployeeDirectorMember" xlink:label="NonEmployeeDirectorMember" xlink:title="NonEmployeeDirectorMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="NonEmployeeDirectorMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to NonEmployeeDirectorMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ChiefExecutiveOfficerMember" xlink:label="ChiefExecutiveOfficerMember" xlink:title="ChiefExecutiveOfficerMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ChiefExecutiveOfficerMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to ChiefExecutiveOfficerMember" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedPaymentArrangementEmployeeMember" xlink:label="ShareBasedPaymentArrangementEmployeeMember" xlink:title="ShareBasedPaymentArrangementEmployeeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ShareBasedPaymentArrangementEmployeeMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to ShareBasedPaymentArrangementEmployeeMember" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_DirectorMember" xlink:label="DirectorMember" xlink:title="DirectorMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="DirectorMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to DirectorMember" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="RangeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to RangeAxis" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="definition: RangeMember to MinimumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" order="9.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" order="10.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" order="11.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="12.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_RestrictedStockAndRestrictedStockUnitsMember" xlink:label="RestrictedStockAndRestrictedStockUnitsMember" xlink:title="RestrictedStockAndRestrictedStockUnitsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockAndRestrictedStockUnitsMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockAndRestrictedStockUnitsMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="ShareBasedCompensationAbstract" xlink:title="ShareBasedCompensationAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationAbstract" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="AllocatedShareBasedCompensationExpense" xlink:title="AllocatedShareBasedCompensationExpense" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="AllocatedShareBasedCompensationExpense" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to AllocatedShareBasedCompensationExpense" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to StockIssuedDuringPeriodSharesRestrictedStockAwardGross" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="definition: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="9.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="definition: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="RestrictedStockUnitsRSUMember" xlink:title="RestrictedStockUnitsRSUMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockUnitsRSUMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockUnitsRSUMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:label="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="ServicedBasedRestrictedStockUnitsRSUsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="definition: RestrictedStockUnitsRSUMember to ServicedBasedRestrictedStockUnitsRSUsMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:label="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:title="PerformanceBasedRestrictedStockUnitsRSUsMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:title="definition: RestrictedStockUnitsRSUMember to PerformanceBasedRestrictedStockUnitsRSUsMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDilutedLineItems" xlink:label="EarningsPerShareDilutedLineItems" xlink:title="EarningsPerShareDilutedLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAbstract" xlink:label="NetIncomeLossAbstract" xlink:title="NetIncomeLossAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="NetIncomeLossAbstract" xlink:title="definition: EarningsPerShareDilutedLineItems to NetIncomeLossAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="definition: EarningsPerShareDilutedLineItems to WeightedAverageNumberOfSharesOutstandingAbstract" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="definition: EarningsPerShareDilutedLineItems to WeightedAverageNumberOfSharesOutstandingBasic" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="definition: EarningsPerShareDilutedLineItems to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="definition: EarningsPerShareDilutedLineItems to WeightedAverageNumberOfDilutedSharesOutstanding" order="5.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="EarningsPerShareBasic" xlink:title="definition: EarningsPerShareDilutedLineItems to EarningsPerShareBasic" order="6.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="EarningsPerShareDiluted" xlink:title="definition: EarningsPerShareDilutedLineItems to EarningsPerShareDiluted" order="7.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="NetIncomeLoss" xlink:title="definition: EarningsPerShareDilutedLineItems to NetIncomeLoss" order="8.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:label="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:title="ScheduleOfEarningsPerShareDilutedByCommonClassTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:title="definition: EarningsPerShareDilutedLineItems to ScheduleOfEarningsPerShareDilutedByCommonClassTable" order="9.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:to="AwardTypeAxis" xlink:title="definition: ScheduleOfEarningsPerShareDilutedByCommonClassTable to AwardTypeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" xlink:title="definition: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockMember" xlink:title="definition: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:to="TitleOfIndividualAxis" xlink:title="definition: ScheduleOfEarningsPerShareDilutedByCommonClassTable to TitleOfIndividualAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="definition: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain_2" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain_2" xlink:title="definition: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_DirectorMember" xlink:label="DirectorMember" xlink:title="DirectorMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="DirectorMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to DirectorMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedPaymentArrangementEmployeeMember" xlink:label="ShareBasedPaymentArrangementEmployeeMember" xlink:title="ShareBasedPaymentArrangementEmployeeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ShareBasedPaymentArrangementEmployeeMember" xlink:title="definition: TitleOfIndividualWithRelationshipToEntityDomain to ShareBasedPaymentArrangementEmployeeMember" order="2.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="EquityClassOfTreasuryStockLineItems" xlink:title="EquityClassOfTreasuryStockLineItems" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_StockRepurchaseProgramAbstract" xlink:label="StockRepurchaseProgramAbstract" xlink:title="StockRepurchaseProgramAbstract" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramAbstract" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramAbstract" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="StockRepurchaseProgramAuthorizedAmount1" xlink:title="StockRepurchaseProgramAuthorizedAmount1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramAuthorizedAmount1" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramAuthorizedAmount1" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonValue" xlink:label="TreasuryStockCommonValue" xlink:title="TreasuryStockCommonValue" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="TreasuryStockCommonValue" xlink:title="definition: EquityClassOfTreasuryStockLineItems to TreasuryStockCommonValue" order="3.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="definition: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" order="4.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="ClassOfTreasuryStockTable" xlink:title="ClassOfTreasuryStockTable" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="ClassOfTreasuryStockTable" xlink:title="definition: EquityClassOfTreasuryStockLineItems to ClassOfTreasuryStockTable" order="5.0" t1:closed="true" t1:contextElement="segment" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ClassOfTreasuryStockTable" xlink:to="RangeAxis" xlink:title="definition: ClassOfTreasuryStockTable to RangeAxis" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="definition: RangeAxis to RangeMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember_2" xlink:title="RangeMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="RangeAxis" xlink:to="RangeMember_2" xlink:title="definition: RangeAxis to RangeMember_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="definition: RangeMember to MaximumMember" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="ShareRepurchaseProgramAxis" xlink:title="ShareRepurchaseProgramAxis" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="ClassOfTreasuryStockTable" xlink:to="ShareRepurchaseProgramAxis" xlink:title="definition: ClassOfTreasuryStockTable to ShareRepurchaseProgramAxis" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain" xlink:title="ShareRepurchaseProgramDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="ShareRepurchaseProgramAxis" xlink:to="ShareRepurchaseProgramDomain" xlink:title="definition: ShareRepurchaseProgramAxis to ShareRepurchaseProgramDomain" order="1.0" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain_2" xlink:title="ShareRepurchaseProgramDomain" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="ShareRepurchaseProgramAxis" xlink:to="ShareRepurchaseProgramDomain_2" xlink:title="definition: ShareRepurchaseProgramAxis to ShareRepurchaseProgramDomain_2" order="2.0" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareRepurchaseProgramMember" xlink:label="ShareRepurchaseProgramMember" xlink:title="ShareRepurchaseProgramMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="ShareRepurchaseProgramDomain" xlink:to="ShareRepurchaseProgramMember" xlink:title="definition: ShareRepurchaseProgramDomain to ShareRepurchaseProgramMember" order="1.0" />
  </link:definitionLink>
  <link:definitionLink xlink:type="extended" xlink:role="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails" />
  <link:definitionLink xlink:type="extended" xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="VariableRateDomain" xlink:title="VariableRateDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TermSecuredOvernightFinancingRateSOFRRateMember" xlink:label="TermSecuredOvernightFinancingRateSOFRRateMember" xlink:title="TermSecuredOvernightFinancingRateSOFRRateMember" />
    <link:definitionArc xlink:type="arc" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="VariableRateDomain" xlink:to="TermSecuredOvernightFinancingRateSOFRRateMember" xlink:title="definition: VariableRateDomain to TermSecuredOvernightFinancingRateSOFRRateMember" order="1.0" />
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>tlfa-20250331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 25.3.2.5298 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsReceivableNetCurrent" xml:lang="en-US" id="us-gaap_AccountsReceivableNetCurrent">Accounts receivable-trade, net of allowance for credit losses of $49 at March 31, 2025 and December 31, 2024</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:title="label: AccountsReceivableNetCurrent to us-gaap_AccountsReceivableNetCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">Accumulated other comprehensive loss, net of tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="label: AccumulatedOtherComprehensiveIncomeLossNetOfTax to us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:title="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xml:lang="en-US" id="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">Less accumulated depreciation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="label: AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment to us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" xlink:title="label: AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment to us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapital" xlink:label="AdditionalPaidInCapital" xlink:title="AdditionalPaidInCapital" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdditionalPaidInCapital" xml:lang="en-US" id="us-gaap_AdditionalPaidInCapital">Paid-in capital</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdditionalPaidInCapital" xlink:to="us-gaap_AdditionalPaidInCapital" xlink:title="label: AdditionalPaidInCapital to us-gaap_AdditionalPaidInCapital" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xml:lang="en-US" id="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">Allowance for credit losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="label: AllowanceForDoubtfulAccountsReceivableCurrent to us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="AmortizationOfIntangibleAssets" xlink:title="AmortizationOfIntangibleAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AmortizationOfIntangibleAssets" xml:lang="en-US" id="us-gaap_AmortizationOfIntangibleAssets">Amortization expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:title="label: AmortizationOfIntangibleAssets to us-gaap_AmortizationOfIntangibleAssets" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RestrictedStockMember" xml:lang="en-US" id="us-gaap_RestrictedStockMember">Restricted Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember" xlink:title="label: RestrictedStockMember to us-gaap_RestrictedStockMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="StatementOfFinancialPositionAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfFinancialPositionAbstract" xml:lang="en-US" id="us-gaap_StatementOfFinancialPositionAbstract">Consolidated Balance Sheets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract" xlink:title="label: StatementOfFinancialPositionAbstract to us-gaap_StatementOfFinancialPositionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareBasic" xml:lang="en-US" id="us-gaap_EarningsPerShareBasic">Basic (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic" xlink:title="label: EarningsPerShareBasic to us-gaap_EarningsPerShareBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareBasic1" xml:lang="en-US" id="us-gaap_EarningsPerShareBasic1">Basic earnings per share (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic1" xlink:title="label: EarningsPerShareBasic to us-gaap_EarningsPerShareBasic1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CashAndCashEquivalentsAtCarryingValue" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsAtCarryingValue">Cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:title="label: CashAndCashEquivalentsAtCarryingValue to us-gaap_CashAndCashEquivalentsAtCarryingValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl1" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl1">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl1" xlink:title="label: CashAndCashEquivalentsAtCarryingValue to us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="CashAndCashEquivalentsPolicyTextBlock" xlink:title="CashAndCashEquivalentsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xml:lang="en-US" id="us-gaap_CashAndCashEquivalentsPolicyTextBlock">Cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashAndCashEquivalentsPolicyTextBlock" xlink:to="us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:title="label: CashAndCashEquivalentsPolicyTextBlock to us-gaap_CashAndCashEquivalentsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInAccountsReceivable" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsReceivable">Accounts receivable-trade</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:title="label: IncreaseDecreaseInAccountsReceivable to us-gaap_IncreaseDecreaseInAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1">Increase (Decrease) in Accounts Receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" xlink:title="label: IncreaseDecreaseInAccountsReceivable to us-gaap_IncreaseDecreaseInAccountsReceivable_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInInventories" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInInventories">Inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:title="label: IncreaseDecreaseInInventories to us-gaap_IncreaseDecreaseInInventories" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInInventories_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInInventories_lbl1">Increase (Decrease) in Inventories</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl1" xlink:title="label: IncreaseDecreaseInInventories to us-gaap_IncreaseDecreaseInInventories_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="IncreaseDecreaseInPrepaidExpense" xlink:title="IncreaseDecreaseInPrepaidExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInPrepaidExpense" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInPrepaidExpense">Prepaid expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:title="label: IncreaseDecreaseInPrepaidExpense to us-gaap_IncreaseDecreaseInPrepaidExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl1">Increase (Decrease) in Prepaid Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInPrepaidExpense" xlink:to="us-gaap_IncreaseDecreaseInPrepaidExpense_lbl1" xlink:title="label: IncreaseDecreaseInPrepaidExpense to us-gaap_IncreaseDecreaseInPrepaidExpense_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract">Changes in operating assets and liabilities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="label: IncreaseDecreaseInOperatingCapitalAbstract to us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="IncreaseDecreaseInAccountsPayable" xlink:title="IncreaseDecreaseInAccountsPayable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncreaseDecreaseInAccountsPayable" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsPayable">Accounts payable-trade</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:title="label: IncreaseDecreaseInAccountsPayable to us-gaap_IncreaseDecreaseInAccountsPayable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1">Increase (Decrease) in Accounts Payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" xlink:title="label: IncreaseDecreaseInAccountsPayable to us-gaap_IncreaseDecreaseInAccountsPayable_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:label="IncreaseDecreaseInAccruedLiabilities" xlink:title="IncreaseDecreaseInAccruedLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncreaseDecreaseInAccruedLiabilities" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccruedLiabilities">Accrued expenses and other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities" xlink:title="label: IncreaseDecreaseInAccruedLiabilities to us-gaap_IncreaseDecreaseInAccruedLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl1">Increase (Decrease) in Accrued Liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl1" xlink:title="label: IncreaseDecreaseInAccruedLiabilities to us-gaap_IncreaseDecreaseInAccruedLiabilities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xml:lang="en-US" id="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">COMMITMENTS AND CONTINGENCIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="label: CommitmentsAndContingenciesDisclosureTextBlock to us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" xml:lang="en-US" id="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" xlink:title="label: CommitmentsAndContingenciesDisclosureTextBlock to us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="CommonStockSharesAuthorized" xlink:title="CommonStockSharesAuthorized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesAuthorized" xml:lang="en-US" id="us-gaap_CommonStockSharesAuthorized">Common stock, shares authorized (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:title="label: CommonStockSharesAuthorized to us-gaap_CommonStockSharesAuthorized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="CommonStockSharesIssued" xlink:title="CommonStockSharesIssued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesIssued" xml:lang="en-US" id="us-gaap_CommonStockSharesIssued">Common stock, shares issued (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued" xlink:title="label: CommonStockSharesIssued to us-gaap_CommonStockSharesIssued" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="CommonStockSharesOutstanding" xlink:title="CommonStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockSharesOutstanding" xml:lang="en-US" id="us-gaap_CommonStockSharesOutstanding">Common stock, shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:title="label: CommonStockSharesOutstanding to us-gaap_CommonStockSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockValue" xml:lang="en-US" id="us-gaap_CommonStockValue">Common stock, $0.0024 par value; 25,000,000 shares authorized; 9,936,930 and 9,920,957 shares issued at March 31, 2025 and December 31, 2024, respectively; 8,512,554 and 8,496,581 shares outstanding at March 31, 2025 and December 31, 2024, respectively</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockValue" xlink:to="us-gaap_CommonStockValue" xlink:title="label: CommonStockValue to us-gaap_CommonStockValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="ConcentrationRiskByTypeAxis" xlink:title="ConcentrationRiskByTypeAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskByTypeAxis" xml:lang="en-US" id="us-gaap_ConcentrationRiskByTypeAxis">Concentration Risk Type [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:title="label: ConcentrationRiskByTypeAxis to us-gaap_ConcentrationRiskByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain" xlink:title="ConcentrationRiskTypeDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskTypeDomain" xml:lang="en-US" id="us-gaap_ConcentrationRiskTypeDomain">Concentration Risk Type [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:title="label: ConcentrationRiskTypeDomain to us-gaap_ConcentrationRiskTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="CostOfGoodsAndServicesSold" xlink:title="CostOfGoodsAndServicesSold" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfGoodsAndServicesSold" xml:lang="en-US" id="us-gaap_CostOfGoodsAndServicesSold">Cost of sales</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:title="label: CostOfGoodsAndServicesSold to us-gaap_CostOfGoodsAndServicesSold" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciation" xlink:label="CostOfGoodsAndServicesSoldDepreciation" xlink:title="CostOfGoodsAndServicesSoldDepreciation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSoldDepreciation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CostOfGoodsAndServicesSoldDepreciation" xml:lang="en-US" id="us-gaap_CostOfGoodsAndServicesSoldDepreciation">Depreciation and amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CostOfGoodsAndServicesSoldDepreciation" xlink:to="us-gaap_CostOfGoodsAndServicesSoldDepreciation" xlink:title="label: CostOfGoodsAndServicesSoldDepreciation to us-gaap_CostOfGoodsAndServicesSoldDepreciation" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesCurrent" xml:lang="en-US" id="us-gaap_LiabilitiesCurrent">Total current liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent" xlink:title="label: LiabilitiesCurrent to us-gaap_LiabilitiesCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesCurrent_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesCurrent_lbl1">Liabilities, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl1" xlink:title="label: LiabilitiesCurrent to us-gaap_LiabilitiesCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesCurrentAbstract" xml:lang="en-US" id="us-gaap_LiabilitiesCurrentAbstract">CURRENT LIABILITIES:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:title="label: LiabilitiesCurrentAbstract to us-gaap_LiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="DebtDisclosureTextBlock" xlink:title="DebtDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtDisclosureTextBlock" xml:lang="en-US" id="us-gaap_DebtDisclosureTextBlock">NOTES PAYABLE AND LONG-TERM DEBT</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock" xlink:title="label: DebtDisclosureTextBlock to us-gaap_DebtDisclosureTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentsAbstract" xml:lang="en-US" id="us-gaap_DebtInstrumentsAbstract">Debt Instruments [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentsAbstract" xlink:to="us-gaap_DebtInstrumentsAbstract" xlink:title="label: DebtInstrumentsAbstract to us-gaap_DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentLineItems" xml:lang="en-US" id="us-gaap_DebtInstrumentLineItems">Debt Instrument [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentLineItems" xlink:to="us-gaap_DebtInstrumentLineItems" xlink:title="label: DebtInstrumentLineItems to us-gaap_DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentTable" xml:lang="en-US" id="us-gaap_DebtInstrumentTable">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentTable" xlink:to="us-gaap_DebtInstrumentTable" xlink:title="label: DebtInstrumentTable to us-gaap_DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareDiluted" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted">Diluted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_EarningsPerShareDiluted1" xml:lang="en-US" id="us-gaap_EarningsPerShareDiluted1">Diluted earnings per share (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted1" xlink:title="label: EarningsPerShareDiluted to us-gaap_EarningsPerShareDiluted1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="EffectiveIncomeTaxRateContinuingOperations" xlink:title="EffectiveIncomeTaxRateContinuingOperations" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xml:lang="en-US" id="us-gaap_EffectiveIncomeTaxRateContinuingOperations">Effective tax rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:title="label: EffectiveIncomeTaxRateContinuingOperations to us-gaap_EffectiveIncomeTaxRateContinuingOperations" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="AllocatedShareBasedCompensationExpense" xlink:title="AllocatedShareBasedCompensationExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AllocatedShareBasedCompensationExpense" xml:lang="en-US" id="us-gaap_AllocatedShareBasedCompensationExpense">Stock-based compensation expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" xlink:title="label: AllocatedShareBasedCompensationExpense to us-gaap_AllocatedShareBasedCompensationExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AllocatedShareBasedCompensationExpense_lbl1" xml:lang="en-US" id="us-gaap_AllocatedShareBasedCompensationExpense_lbl1">Share-Based Payment Arrangement, Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl1" xlink:title="label: AllocatedShareBasedCompensationExpense to us-gaap_AllocatedShareBasedCompensationExpense_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensation" xml:lang="en-US" id="us-gaap_ShareBasedCompensation">Stock-based compensation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation" xlink:title="label: ShareBasedCompensation to us-gaap_ShareBasedCompensation" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensation_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensation_lbl1">Share-Based Payment Arrangement, Noncash Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl1" xlink:title="label: ShareBasedCompensation to us-gaap_ShareBasedCompensation_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="ShareBasedCompensationAbstract" xlink:title="ShareBasedCompensationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationAbstract" xml:lang="en-US" id="us-gaap_ShareBasedCompensationAbstract">Share-based Compensation Expense [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationAbstract" xlink:to="us-gaap_ShareBasedCompensationAbstract" xlink:title="label: ShareBasedCompensationAbstract to us-gaap_ShareBasedCompensationAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationAbstract_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationAbstract_lbl1">Share-Based Payment Arrangement, Noncash Expense [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationAbstract" xlink:to="us-gaap_ShareBasedCompensationAbstract_lbl1" xlink:title="label: ShareBasedCompensationAbstract to us-gaap_ShareBasedCompensationAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:label="FairValueOfFinancialInstrumentsPolicy" xlink:title="FairValueOfFinancialInstrumentsPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueOfFinancialInstrumentsPolicy" xml:lang="en-US" id="us-gaap_FairValueOfFinancialInstrumentsPolicy">Fair Value of Financial Instruments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueOfFinancialInstrumentsPolicy" xlink:to="us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:title="label: FairValueOfFinancialInstrumentsPolicy to us-gaap_FairValueOfFinancialInstrumentsPolicy" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:title="FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:title="label: FiniteLivedIntangibleAssetsMajorClassNameDomain to us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:title="FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:title="label: FiniteLivedIntangibleAssetsByMajorClassAxis to us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:label="FiniteLivedIntangibleAssetsLineItems" xlink:title="FiniteLivedIntangibleAssetsLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsLineItems" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsLineItems">Finite-Lived Intangible Assets [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsLineItems" xlink:title="label: FiniteLivedIntangibleAssetsLineItems to us-gaap_FiniteLivedIntangibleAssetsLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xml:lang="en-US" id="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">Foreign currency translation and transactions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="label: ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock to us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FurnitureAndFixturesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FurnitureAndFixturesMember" xml:lang="en-US" id="us-gaap_FurnitureAndFixturesMember">Furniture and Fixtures [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FurnitureAndFixturesMember" xlink:to="us-gaap_FurnitureAndFixturesMember" xlink:title="label: FurnitureAndFixturesMember to us-gaap_FurnitureAndFixturesMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnDispositionOfAssets" xlink:label="GainLossOnDispositionOfAssets" xlink:title="GainLossOnDispositionOfAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_GainLossOnDispositionOfAssets" xml:lang="en-US" id="us-gaap_GainLossOnDispositionOfAssets">Gain on disposal of Headquarter (see footnote 8)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainLossOnDispositionOfAssets" xlink:to="us-gaap_GainLossOnDispositionOfAssets" xlink:title="label: GainLossOnDispositionOfAssets to us-gaap_GainLossOnDispositionOfAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets1" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_GainLossOnDispositionOfAssets1" xml:lang="en-US" id="us-gaap_GainLossOnDispositionOfAssets1">Gain on disposal of assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainLossOnDispositionOfAssets" xlink:to="us-gaap_GainLossOnDispositionOfAssets1" xlink:title="label: GainLossOnDispositionOfAssets to us-gaap_GainLossOnDispositionOfAssets1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GainLossOnDispositionOfAssets2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GainLossOnDispositionOfAssets2" xml:lang="en-US" id="us-gaap_GainLossOnDispositionOfAssets2">Net Gain</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GainLossOnDispositionOfAssets" xlink:to="us-gaap_GainLossOnDispositionOfAssets2" xlink:title="label: GainLossOnDispositionOfAssets to us-gaap_GainLossOnDispositionOfAssets2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="GeographicConcentrationRiskMember" xlink:title="GeographicConcentrationRiskMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GeographicConcentrationRiskMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GeographicConcentrationRiskMember" xml:lang="en-US" id="us-gaap_GeographicConcentrationRiskMember">Geographic Concentration Risk [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GeographicConcentrationRiskMember" xlink:to="us-gaap_GeographicConcentrationRiskMember" xlink:title="label: GeographicConcentrationRiskMember to us-gaap_GeographicConcentrationRiskMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsFiniteLivedPolicy" xlink:label="IntangibleAssetsFiniteLivedPolicy" xlink:title="IntangibleAssetsFiniteLivedPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsFiniteLivedPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IntangibleAssetsFiniteLivedPolicy" xml:lang="en-US" id="us-gaap_IntangibleAssetsFiniteLivedPolicy">Other Intangible Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntangibleAssetsFiniteLivedPolicy" xlink:to="us-gaap_IntangibleAssetsFiniteLivedPolicy" xlink:title="label: IntangibleAssetsFiniteLivedPolicy to us-gaap_IntangibleAssetsFiniteLivedPolicy" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_GrossProfit" xml:lang="en-US" id="us-gaap_GrossProfit">Gross profit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GrossProfit" xlink:to="us-gaap_GrossProfit" xlink:title="label: GrossProfit to us-gaap_GrossProfit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_GrossProfit_lbl1" xml:lang="en-US" id="us-gaap_GrossProfit_lbl1">Gross Profit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GrossProfit" xlink:to="us-gaap_GrossProfit_lbl1" xlink:title="label: GrossProfit to us-gaap_GrossProfit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xml:lang="en-US" id="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">Impairment of Long-Lived Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="label: ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock to us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl1">Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:to="us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl1" xlink:title="label: ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock to us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="IncomeStatementAbstract" xlink:title="IncomeStatementAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeStatementAbstract" xml:lang="en-US" id="us-gaap_IncomeStatementAbstract">Consolidated Statements of Operations and Comprehensive Income [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract" xlink:title="label: IncomeStatementAbstract to us-gaap_IncomeStatementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="IncomeTaxDisclosureTextBlock" xlink:title="IncomeTaxDisclosureTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxDisclosureTextBlock" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureTextBlock">INCOME TAX</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" xlink:title="label: IncomeTaxDisclosureTextBlock to us-gaap_IncomeTaxDisclosureTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxPolicyTextBlock" xlink:label="IncomeTaxPolicyTextBlock" xlink:title="IncomeTaxPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxPolicyTextBlock" xml:lang="en-US" id="us-gaap_IncomeTaxPolicyTextBlock">Income Taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxPolicyTextBlock" xlink:to="us-gaap_IncomeTaxPolicyTextBlock" xlink:title="label: IncomeTaxPolicyTextBlock to us-gaap_IncomeTaxPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="IncomeTaxesReceivable" xlink:title="IncomeTaxesReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxesReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxesReceivable" xml:lang="en-US" id="us-gaap_IncomeTaxesReceivable">Income tax receivable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxesReceivable" xlink:to="us-gaap_IncomeTaxesReceivable" xlink:title="label: IncomeTaxesReceivable to us-gaap_IncomeTaxesReceivable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xml:lang="en-US" id="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">Dilutive effect of service-based restricted stock awards granted under the Plan (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="label: IncrementalCommonSharesAttributableToShareBasedPaymentArrangements to us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl1" xml:lang="en-US" id="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl1">Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl1" xlink:title="label: IncrementalCommonSharesAttributableToShareBasedPaymentArrangements to us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="FiniteLivedIntangibleAssetsNetAbstract" xlink:title="FiniteLivedIntangibleAssetsNetAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsNetAbstract">Intangible Assets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:title="label: FiniteLivedIntangibleAssetsNetAbstract to us-gaap_FiniteLivedIntangibleAssetsNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="InventoryFinishedGoods" xlink:title="InventoryFinishedGoods" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryFinishedGoods" xml:lang="en-US" id="us-gaap_InventoryFinishedGoods">Finished goods held for sale</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods" xlink:title="label: InventoryFinishedGoods to us-gaap_InventoryFinishedGoods" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryNet" xml:lang="en-US" id="us-gaap_InventoryNet">Inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet" xlink:title="label: InventoryNet to us-gaap_InventoryNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNet1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_InventoryNet1" xml:lang="en-US" id="us-gaap_InventoryNet1">Total inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNet" xlink:to="us-gaap_InventoryNet1" xlink:title="label: InventoryNet to us-gaap_InventoryNet1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNetAbstract" xlink:label="InventoryNetAbstract" xlink:title="InventoryNetAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryNetAbstract" xml:lang="en-US" id="us-gaap_InventoryNetAbstract">Inventory on-hand [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryNetAbstract" xlink:to="us-gaap_InventoryNetAbstract" xlink:title="label: InventoryNetAbstract to us-gaap_InventoryNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherInventoryInTransit" xlink:label="OtherInventoryInTransit" xlink:title="OtherInventoryInTransit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherInventoryInTransit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherInventoryInTransit" xml:lang="en-US" id="us-gaap_OtherInventoryInTransit">Inventory in transit</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherInventoryInTransit" xlink:to="us-gaap_OtherInventoryInTransit" xlink:title="label: OtherInventoryInTransit to us-gaap_OtherInventoryInTransit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryPolicyTextBlock" xlink:label="InventoryPolicyTextBlock" xlink:title="InventoryPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InventoryPolicyTextBlock" xml:lang="en-US" id="us-gaap_InventoryPolicyTextBlock">Inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock" xlink:title="label: InventoryPolicyTextBlock to us-gaap_InventoryPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_InventoryPolicyTextBlock_lbl1">Inventory, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryPolicyTextBlock" xlink:to="us-gaap_InventoryPolicyTextBlock_lbl1" xlink:title="label: InventoryPolicyTextBlock to us-gaap_InventoryPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_LiabilitiesAndStockholdersEquity" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquity">TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" xlink:title="label: LiabilitiesAndStockholdersEquity to us-gaap_LiabilitiesAndStockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquity_lbl1">Liabilities and Equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl1" xlink:title="label: LiabilitiesAndStockholdersEquity to us-gaap_LiabilitiesAndStockholdersEquity_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xml:lang="en-US" id="us-gaap_LiabilitiesAndStockholdersEquityAbstract">LIABILITIES AND STOCKHOLDERS' EQUITY</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:title="label: LiabilitiesAndStockholdersEquityAbstract to us-gaap_LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="LineOfCreditFacilityLenderDomain" xlink:title="LineOfCreditFacilityLenderDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityLenderDomain" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityLenderDomain">Line of Credit Facility, Lender [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityLenderDomain" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:title="label: LineOfCreditFacilityLenderDomain to us-gaap_LineOfCreditFacilityLenderDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">Line of credit facility, maximum borrowing capacity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="label: LineOfCreditFacilityMaximumBorrowingCapacity to us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="LineOfCreditFacilityAxis" xlink:title="LineOfCreditFacilityAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LineOfCreditFacilityAxis" xml:lang="en-US" id="us-gaap_LineOfCreditFacilityAxis">Lender Name [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:title="label: LineOfCreditFacilityAxis to us-gaap_LineOfCreditFacilityAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_MachineryAndEquipmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_MachineryAndEquipmentMember" xml:lang="en-US" id="us-gaap_MachineryAndEquipmentMember">Equipment and Machinery [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MachineryAndEquipmentMember" xlink:to="us-gaap_MachineryAndEquipmentMember" xlink:title="label: MachineryAndEquipmentMember to us-gaap_MachineryAndEquipmentMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivities" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivities">Net cash used in financing activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:title="label: NetCashProvidedByUsedInFinancingActivities to us-gaap_NetCashProvidedByUsedInFinancingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInFinancingActivities to us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">Cash flows from financing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="label: NetCashProvidedByUsedInFinancingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivities" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivities">Net cash provided from (used in) investing activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:title="label: NetCashProvidedByUsedInInvestingActivities to us-gaap_NetCashProvidedByUsedInInvestingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInInvestingActivities to us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">Cash flows used investing activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="label: NetCashProvidedByUsedInInvestingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivities" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivities">Net cash used in operating activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:title="label: NetCashProvidedByUsedInOperatingActivities to us-gaap_NetCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" xlink:title="label: NetCashProvidedByUsedInOperatingActivities to us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US" id="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">Cash flows from operating activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="label: NetCashProvidedByUsedInOperatingActivitiesAbstract to us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NetIncomeLoss" xml:lang="en-US" id="us-gaap_NetIncomeLoss">Net income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NetIncomeLoss1" xml:lang="en-US" id="us-gaap_NetIncomeLoss1">Net income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss1" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss2" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_NetIncomeLoss2" xml:lang="en-US" id="us-gaap_NetIncomeLoss2">Net income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss2" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLoss_lbl3" xml:lang="en-US" id="us-gaap_NetIncomeLoss_lbl3">Net Income (Loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl3" xlink:title="label: NetIncomeLoss to us-gaap_NetIncomeLoss_lbl3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="InterestIncomeExpenseNet" xlink:title="InterestIncomeExpenseNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InterestIncomeExpenseNet" xml:lang="en-US" id="us-gaap_InterestIncomeExpenseNet">Interest income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InterestIncomeExpenseNet" xlink:to="us-gaap_InterestIncomeExpenseNet" xlink:title="label: InterestIncomeExpenseNet to us-gaap_InterestIncomeExpenseNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="NonoperatingIncomeExpense" xlink:title="NonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_NonoperatingIncomeExpense" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpense">Total other income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:title="label: NonoperatingIncomeExpense to us-gaap_NonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NonoperatingIncomeExpense_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NonoperatingIncomeExpense_lbl1" xml:lang="en-US" id="us-gaap_NonoperatingIncomeExpense_lbl1">Nonoperating Income (Expense)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense_lbl1" xlink:title="label: NonoperatingIncomeExpense to us-gaap_NonoperatingIncomeExpense_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_OperatingIncomeLoss" xml:lang="en-US" id="us-gaap_OperatingIncomeLoss">Income from operations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss" xlink:title="label: OperatingIncomeLoss to us-gaap_OperatingIncomeLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingIncomeLoss_lbl1" xml:lang="en-US" id="us-gaap_OperatingIncomeLoss_lbl1">Operating Income (Loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl1" xlink:title="label: OperatingIncomeLoss to us-gaap_OperatingIncomeLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLossAbstract" xlink:label="OperatingIncomeLossAbstract" xlink:title="OperatingIncomeLossAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLossAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingIncomeLossAbstract" xml:lang="en-US" id="us-gaap_OperatingIncomeLossAbstract">Other income (expense):</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingIncomeLossAbstract" xlink:to="us-gaap_OperatingIncomeLossAbstract" xlink:title="label: OperatingIncomeLossAbstract to us-gaap_OperatingIncomeLossAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsCurrent" xml:lang="en-US" id="us-gaap_OtherAssetsCurrent">Other current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent" xlink:title="label: OtherAssetsCurrent to us-gaap_OtherAssetsCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherNonoperatingIncomeExpense" xml:lang="en-US" id="us-gaap_OtherNonoperatingIncomeExpense">Other, net (see footnote 8)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:title="label: OtherNonoperatingIncomeExpense to us-gaap_OtherNonoperatingIncomeExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="PaymentsOfDividendsCommonStock" xlink:title="PaymentsOfDividendsCommonStock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsOfDividendsCommonStock" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsOfDividendsCommonStock" xml:lang="en-US" id="us-gaap_PaymentsOfDividendsCommonStock">Dividend Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock" xlink:title="label: PaymentsOfDividendsCommonStock to us-gaap_PaymentsOfDividendsCommonStock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsOfDividendsCommonStock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsOfDividendsCommonStock_lbl1" xml:lang="en-US" id="us-gaap_PaymentsOfDividendsCommonStock_lbl1">Payments of Ordinary Dividends, Common Stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsOfDividendsCommonStock" xlink:to="us-gaap_PaymentsOfDividendsCommonStock_lbl1" xlink:title="label: PaymentsOfDividendsCommonStock to us-gaap_PaymentsOfDividendsCommonStock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="PrepaidExpenseCurrent" xlink:title="PrepaidExpenseCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PrepaidExpenseCurrent" xml:lang="en-US" id="us-gaap_PrepaidExpenseCurrent">Prepaid expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent" xlink:title="label: PrepaidExpenseCurrent to us-gaap_PrepaidExpenseCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="ProceedsFromLinesOfCredit" xlink:title="ProceedsFromLinesOfCredit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromLinesOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromLinesOfCredit" xml:lang="en-US" id="us-gaap_ProceedsFromLinesOfCredit">Line of credit facility, funds borrowed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromLinesOfCredit" xlink:to="us-gaap_ProceedsFromLinesOfCredit" xlink:title="label: ProceedsFromLinesOfCredit to us-gaap_ProceedsFromLinesOfCredit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="ProceedsFromSaleOfProductiveAssets" xlink:title="ProceedsFromSaleOfProductiveAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ProceedsFromSaleOfProductiveAssets" xml:lang="en-US" id="us-gaap_ProceedsFromSaleOfProductiveAssets">Proceeds from Sale of property and equipment. net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromSaleOfProductiveAssets" xlink:to="us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:title="label: ProceedsFromSaleOfProductiveAssets to us-gaap_ProceedsFromSaleOfProductiveAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleOfProductiveAssets1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ProceedsFromSaleOfProductiveAssets1" xml:lang="en-US" id="us-gaap_ProceedsFromSaleOfProductiveAssets1">Net Proceeds</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ProceedsFromSaleOfProductiveAssets" xlink:to="us-gaap_ProceedsFromSaleOfProductiveAssets1" xlink:title="label: ProceedsFromSaleOfProductiveAssets to us-gaap_ProceedsFromSaleOfProductiveAssets1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentGross" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentGross">Property and equipment, at cost</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentGross" xlink:to="us-gaap_PropertyPlantAndEquipmentGross" xlink:title="label: PropertyPlantAndEquipmentGross to us-gaap_PropertyPlantAndEquipmentGross" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentNet" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet">Property and equipment, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentNet_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNet_lbl1">Property, Plant and Equipment, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl1" xlink:title="label: PropertyPlantAndEquipmentNet to us-gaap_PropertyPlantAndEquipmentNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock">Property and equipment, net of accumulated depreciation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentPolicyTextBlock" xlink:to="us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="label: PropertyPlantAndEquipmentPolicyTextBlock to us-gaap_PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xml:lang="en-US" id="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment">Purchase of property and equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="label: PaymentsToAcquirePropertyPlantAndEquipment to us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xml:lang="en-US" id="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" xlink:title="label: PaymentsToAcquirePropertyPlantAndEquipment to us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RetainedEarningsAccumulatedDeficit" xml:lang="en-US" id="us-gaap_RetainedEarningsAccumulatedDeficit">Retained earnings</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:title="label: RetainedEarningsAccumulatedDeficit to us-gaap_RetainedEarningsAccumulatedDeficit" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:label="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:title="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock">Sale and Disposal of Headquarter</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:title="label: ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock to us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl1">Disposal Groups, Including Discontinued Operations [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:to="us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl1" xlink:title="label: ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock to us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingInformationLineItems" xlink:label="SegmentReportingInformationLineItems" xlink:title="SegmentReportingInformationLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SegmentReportingInformationLineItems" xml:lang="en-US" id="us-gaap_SegmentReportingInformationLineItems">Segment Reporting Information [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SegmentReportingInformationLineItems" xlink:to="us-gaap_SegmentReportingInformationLineItems" xlink:title="label: SegmentReportingInformationLineItems to us-gaap_SegmentReportingInformationLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:title="ScheduleOfSegmentReportingInformationBySegmentTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xml:lang="en-US" id="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:title="label: ScheduleOfSegmentReportingInformationBySegmentTable to us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">Forfeited (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">Granted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod1" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod1">Number of restricted stock units granted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">Granted (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber">Balance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1">Balance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue">Balance (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1">Balance (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">Unrecognized Expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl1" xml:lang="en-US" id="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl1">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized to us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod">Vested (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue">Vested (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain">Award Type [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="label: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xml:lang="en-US" id="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="label: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="StatementOfCashFlowsAbstract" xlink:title="StatementOfCashFlowsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfCashFlowsAbstract" xml:lang="en-US" id="us-gaap_StatementOfCashFlowsAbstract">Consolidated Statements of Cash Flows [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract" xlink:title="label: StatementOfCashFlowsAbstract to us-gaap_StatementOfCashFlowsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="StatementOfStockholdersEquityAbstract" xlink:title="StatementOfStockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementOfStockholdersEquityAbstract" xml:lang="en-US" id="us-gaap_StatementOfStockholdersEquityAbstract">Consolidated Statements of Stockholders' Equity [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract" xlink:title="label: StatementOfStockholdersEquityAbstract to us-gaap_StatementOfStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xml:lang="en-US" id="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">Stock-based compensation</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="label: ShareBasedCompensationOptionAndIncentivePlansPolicy to us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1">Share-Based Payment Arrangement [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:to="us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" xlink:title="label: ShareBasedCompensationOptionAndIncentivePlansPolicy to us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="StockholdersEquityAbstract" xlink:title="StockholdersEquityAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquityAbstract" xml:lang="en-US" id="us-gaap_StockholdersEquityAbstract">STOCKHOLDERS' EQUITY:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:title="label: StockholdersEquityAbstract to us-gaap_StockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AssetsCurrent" xml:lang="en-US" id="us-gaap_AssetsCurrent">Total current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrent" xlink:to="us-gaap_AssetsCurrent" xlink:title="label: AssetsCurrent to us-gaap_AssetsCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsCurrent_lbl1" xml:lang="en-US" id="us-gaap_AssetsCurrent_lbl1">Assets, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl1" xlink:title="label: AssetsCurrent to us-gaap_AssetsCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsCurrentAbstract" xml:lang="en-US" id="us-gaap_AssetsCurrentAbstract">CURRENT ASSETS:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" xlink:title="label: AssetsCurrentAbstract to us-gaap_AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VehiclesMember" xlink:label="VehiclesMember" xlink:title="VehiclesMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_VehiclesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_VehiclesMember" xml:lang="en-US" id="us-gaap_VehiclesMember">Vehicles [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="VehiclesMember" xlink:to="us-gaap_VehiclesMember" xlink:title="label: VehiclesMember to us-gaap_VehiclesMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">Diluted (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="label: WeightedAverageNumberOfDilutedSharesOutstanding to us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1">Diluted weighted-average common shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" xlink:title="label: WeightedAverageNumberOfDilutedSharesOutstanding to us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">Basic (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="label: WeightedAverageNumberOfSharesOutstandingBasic to us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic1">Basic weighted-average common shares outstanding (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic1" xlink:title="label: WeightedAverageNumberOfSharesOutstandingBasic to us-gaap_WeightedAverageNumberOfSharesOutstandingBasic1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryWorkInProcessAndRawMaterials" xlink:label="InventoryWorkInProcessAndRawMaterials" xlink:title="InventoryWorkInProcessAndRawMaterials" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryWorkInProcessAndRawMaterials" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_InventoryWorkInProcessAndRawMaterials" xml:lang="en-US" id="us-gaap_InventoryWorkInProcessAndRawMaterials">Raw materials and work in process</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryWorkInProcessAndRawMaterials" xlink:to="us-gaap_InventoryWorkInProcessAndRawMaterials" xlink:title="label: InventoryWorkInProcessAndRawMaterials to us-gaap_InventoryWorkInProcessAndRawMaterials" />
    <link:label xlink:type="resource" xlink:label="us-gaap_InventoryWorkInProcessAndRawMaterials_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_InventoryWorkInProcessAndRawMaterials_lbl1" xml:lang="en-US" id="us-gaap_InventoryWorkInProcessAndRawMaterials_lbl1">Inventory, Work in Process and Raw Materials</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryWorkInProcessAndRawMaterials" xlink:to="us-gaap_InventoryWorkInProcessAndRawMaterials_lbl1" xlink:title="label: InventoryWorkInProcessAndRawMaterials to us-gaap_InventoryWorkInProcessAndRawMaterials_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockMember" xml:lang="en-US" id="us-gaap_CommonStockMember">Common Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockMember" xlink:to="us-gaap_CommonStockMember" xlink:title="label: CommonStockMember to us-gaap_CommonStockMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentTypeDomain" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentTypeDomain">Long-Lived Tangible Asset [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:title="label: PropertyPlantAndEquipmentTypeDomain to us-gaap_PropertyPlantAndEquipmentTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BuildingAndBuildingImprovementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BuildingAndBuildingImprovementsMember" xml:lang="en-US" id="us-gaap_BuildingAndBuildingImprovementsMember">Buildings and Related Improvements [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BuildingAndBuildingImprovementsMember" xlink:to="us-gaap_BuildingAndBuildingImprovementsMember" xlink:title="label: BuildingAndBuildingImprovementsMember to us-gaap_BuildingAndBuildingImprovementsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:label="PropertyPlantAndEquipmentNetAbstract" xlink:title="PropertyPlantAndEquipmentNetAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_PropertyPlantAndEquipmentNetAbstract" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNetAbstract">Property and Equipment, Net of Accumulated Depreciation [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNetAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:title="label: PropertyPlantAndEquipmentNetAbstract to us-gaap_PropertyPlantAndEquipmentNetAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNetAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentNetAbstract_lbl1" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentNetAbstract_lbl1">Property, Plant and Equipment, Net [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentNetAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNetAbstract_lbl1" xlink:title="label: PropertyPlantAndEquipmentNetAbstract to us-gaap_PropertyPlantAndEquipmentNetAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_Assets" xml:lang="en-US" id="us-gaap_Assets">TOTAL ASSETS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Assets" xlink:to="us-gaap_Assets" xlink:title="label: Assets to us-gaap_Assets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_Assets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_Assets_lbl1" xml:lang="en-US" id="us-gaap_Assets_lbl1">Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Assets" xlink:to="us-gaap_Assets_lbl1" xlink:title="label: Assets to us-gaap_Assets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="AllowanceForDoubtfulAccountsReceivable" xlink:title="AllowanceForDoubtfulAccountsReceivable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AllowanceForDoubtfulAccountsReceivable" xml:lang="en-US" id="us-gaap_AllowanceForDoubtfulAccountsReceivable">Allowance for expected credit losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllowanceForDoubtfulAccountsReceivable" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:title="label: AllowanceForDoubtfulAccountsReceivable to us-gaap_AllowanceForDoubtfulAccountsReceivable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherLiabilitiesNoncurrent" xml:lang="en-US" id="us-gaap_OtherLiabilitiesNoncurrent">Other non-current liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:title="label: OtherLiabilitiesNoncurrent to us-gaap_OtherLiabilitiesNoncurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskByBenchmarkAxis" xml:lang="en-US" id="us-gaap_ConcentrationRiskByBenchmarkAxis">Concentration Risk Benchmark [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:title="label: ConcentrationRiskByBenchmarkAxis to us-gaap_ConcentrationRiskByBenchmarkAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskBenchmarkDomain" xml:lang="en-US" id="us-gaap_ConcentrationRiskBenchmarkDomain">Concentration Risk Benchmark [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:title="label: ConcentrationRiskBenchmarkDomain to us-gaap_ConcentrationRiskBenchmarkDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xml:lang="en-US" id="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">STOCK-BASED COMPENSATION</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="label: DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock to us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="StatementTable" xlink:title="StatementTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementTable" xml:lang="en-US" id="us-gaap_StatementTable">Statement [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementTable" xlink:to="us-gaap_StatementTable" xlink:title="label: StatementTable to us-gaap_StatementTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AssetsAbstract" xml:lang="en-US" id="us-gaap_AssetsAbstract">ASSETS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAbstract" xlink:to="us-gaap_AssetsAbstract" xlink:title="label: AssetsAbstract to us-gaap_AssetsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AssetsAbstract_lbl1" xml:lang="en-US" id="us-gaap_AssetsAbstract_lbl1">Assets [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl1" xlink:title="label: AssetsAbstract to us-gaap_AssetsAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementLineItems" xml:lang="en-US" id="us-gaap_StatementLineItems">Statement [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementLineItems" xlink:to="us-gaap_StatementLineItems" xlink:title="label: StatementLineItems to us-gaap_StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:label="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:title="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xml:lang="en-US" id="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract">Computation of Earnings Per Share [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:title="label: NetIncomeLossAvailableToCommonStockholdersBasicAbstract to us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl1" xml:lang="en-US" id="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl1">Net Income (Loss) Available to Common Stockholders, Basic [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl1" xlink:title="label: NetIncomeLossAvailableToCommonStockholdersBasicAbstract to us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:label="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:title="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xml:lang="en-US" id="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet">Transfers into (out of) Level 3</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:to="us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:title="label: FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet to us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="label: IncreaseDecreaseInStockholdersEquityRollForward to us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="ClassOfTreasuryStockTable" xlink:title="ClassOfTreasuryStockTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ClassOfTreasuryStockTable" xml:lang="en-US" id="us-gaap_ClassOfTreasuryStockTable">Class of Treasury Stock [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ClassOfTreasuryStockTable" xlink:to="us-gaap_ClassOfTreasuryStockTable" xlink:title="label: ClassOfTreasuryStockTable to us-gaap_ClassOfTreasuryStockTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="EquityClassOfTreasuryStockLineItems" xlink:title="EquityClassOfTreasuryStockLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EquityClassOfTreasuryStockLineItems" xml:lang="en-US" id="us-gaap_EquityClassOfTreasuryStockLineItems">Equity, Class of Treasury Stock [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:title="label: EquityClassOfTreasuryStockLineItems to us-gaap_EquityClassOfTreasuryStockLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="IncreaseDecreaseInDeferredIncomeTaxes" xlink:title="IncreaseDecreaseInDeferredIncomeTaxes" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes">Income taxes, net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInDeferredIncomeTaxes" xlink:to="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" xlink:title="label: IncreaseDecreaseInDeferredIncomeTaxes to us-gaap_IncreaseDecreaseInDeferredIncomeTaxes" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_lbl1">Increase (Decrease) in Deferred Income Taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInDeferredIncomeTaxes" xlink:to="us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_lbl1" xlink:title="label: IncreaseDecreaseInDeferredIncomeTaxes to us-gaap_IncreaseDecreaseInDeferredIncomeTaxes_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OtherAssetsNoncurrent" xml:lang="en-US" id="us-gaap_OtherAssetsNoncurrent">Other assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:title="label: OtherAssetsNoncurrent to us-gaap_OtherAssetsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherAssetsNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_OtherAssetsNoncurrent_lbl1">Other Assets, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl1" xlink:title="label: OtherAssetsNoncurrent to us-gaap_OtherAssetsNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_EarningsPerShareAbstract" xml:lang="en-US" id="us-gaap_EarningsPerShareAbstract">Net income per common share:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract" xlink:title="label: EarningsPerShareAbstract to us-gaap_EarningsPerShareAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareAbstract1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareAbstract1" xml:lang="en-US" id="us-gaap_EarningsPerShareAbstract1">EARNINGS PER SHARE [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareAbstract" xlink:to="us-gaap_EarningsPerShareAbstract1" xlink:title="label: EarningsPerShareAbstract to us-gaap_EarningsPerShareAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:label="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:title="ScheduleOfEarningsPerShareDilutedByCommonClassTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" xml:lang="en-US" id="us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable">Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:to="us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:title="label: ScheduleOfEarningsPerShareDilutedByCommonClassTable to us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDilutedLineItems" xlink:label="EarningsPerShareDilutedLineItems" xlink:title="EarningsPerShareDilutedLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDilutedLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareDilutedLineItems" xml:lang="en-US" id="us-gaap_EarningsPerShareDilutedLineItems">Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="us-gaap_EarningsPerShareDilutedLineItems" xlink:title="label: EarningsPerShareDilutedLineItems to us-gaap_EarningsPerShareDilutedLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:label="DeferredIncomeTaxesAndTaxCredits" xlink:title="DeferredIncomeTaxesAndTaxCredits" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredIncomeTaxesAndTaxCredits" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxesAndTaxCredits">Deferred income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxesAndTaxCredits" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:title="label: DeferredIncomeTaxesAndTaxCredits to us-gaap_DeferredIncomeTaxesAndTaxCredits" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl1">Deferred Income Taxes and Tax Credits</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxesAndTaxCredits" xlink:to="us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl1" xlink:title="label: DeferredIncomeTaxesAndTaxCredits to us-gaap_DeferredIncomeTaxesAndTaxCredits_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xml:lang="en-US" id="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable">Property, Plant and Equipment [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="label: ScheduleOfPropertyPlantAndEquipmentTable to us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="CommonStockParOrStatedValuePerShare" xlink:title="CommonStockParOrStatedValuePerShare" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockParOrStatedValuePerShare" xml:lang="en-US" id="us-gaap_CommonStockParOrStatedValuePerShare">Common stock, par value (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" xlink:title="label: CommonStockParOrStatedValuePerShare to us-gaap_CommonStockParOrStatedValuePerShare" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentByTypeAxis">Long-Lived Tangible Asset [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:title="label: PropertyPlantAndEquipmentByTypeAxis to us-gaap_PropertyPlantAndEquipmentByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentLineItems" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentLineItems">Property, Plant and Equipment [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="us-gaap_PropertyPlantAndEquipmentLineItems" xlink:title="label: PropertyPlantAndEquipmentLineItems to us-gaap_PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="CommonStockCapitalSharesReservedForFutureIssuance" xlink:title="CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xml:lang="en-US" id="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance">Number of common shares reserved for issuance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:title="label: CommonStockCapitalSharesReservedForFutureIssuance to us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl1" xml:lang="en-US" id="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl1">Common Stock, Capital Shares Reserved for Future Issuance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl1" xlink:title="label: CommonStockCapitalSharesReservedForFutureIssuance to us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingCostsAndExpenses" xlink:label="OperatingCostsAndExpenses" xlink:title="OperatingCostsAndExpenses" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingCostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingCostsAndExpenses" xml:lang="en-US" id="us-gaap_OperatingCostsAndExpenses">Operating expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingCostsAndExpenses" xlink:to="us-gaap_OperatingCostsAndExpenses" xlink:title="label: OperatingCostsAndExpenses to us-gaap_OperatingCostsAndExpenses" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_StockholdersEquity" xml:lang="en-US" id="us-gaap_StockholdersEquity">Total stockholders' equity</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_StockholdersEquity1" xml:lang="en-US" id="us-gaap_StockholdersEquity1">Balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity1" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity2" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_StockholdersEquity2" xml:lang="en-US" id="us-gaap_StockholdersEquity2">Balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity2" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity2" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockholdersEquity_lbl3" xml:lang="en-US" id="us-gaap_StockholdersEquity_lbl3">Equity, Attributable to Parent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl3" xlink:title="label: StockholdersEquity to us-gaap_StockholdersEquity_lbl3" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncomeTaxExpenseBenefit" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit">Income tax provision</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxExpenseBenefit_lbl1" xml:lang="en-US" id="us-gaap_IncomeTaxExpenseBenefit_lbl1">Income Tax Expense (Benefit)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl1" xlink:title="label: IncomeTaxExpenseBenefit to us-gaap_IncomeTaxExpenseBenefit_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StatementEquityComponentsAxis" xml:lang="en-US" id="us-gaap_StatementEquityComponentsAxis">Equity Components [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:title="label: StatementEquityComponentsAxis to us-gaap_StatementEquityComponentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdditionalPaidInCapitalMember" xml:lang="en-US" id="us-gaap_AdditionalPaidInCapitalMember">Paid-in Capital [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember" xlink:title="label: AdditionalPaidInCapitalMember to us-gaap_AdditionalPaidInCapitalMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RetainedEarningsMember" xml:lang="en-US" id="us-gaap_RetainedEarningsMember">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember" xlink:title="label: RetainedEarningsMember to us-gaap_RetainedEarningsMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xml:lang="en-US" id="us-gaap_AccumulatedOtherComprehensiveIncomeMember">Accumulated Other Comprehensive Income (Loss) [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccumulatedOtherComprehensiveIncomeMember" xlink:to="us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:title="label: AccumulatedOtherComprehensiveIncomeMember to us-gaap_AccumulatedOtherComprehensiveIncomeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EquityComponentDomain" xml:lang="en-US" id="us-gaap_EquityComponentDomain">Equity Component [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain" xlink:title="label: EquityComponentDomain to us-gaap_EquityComponentDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:label="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:title="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xml:lang="en-US" id="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock">Operating expenses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:title="label: SellingGeneralAndAdministrativeExpensesPolicyTextBlock to us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock_lbl1">Selling, General and Administrative Expenses, Policy [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock_lbl1" xlink:title="label: SellingGeneralAndAdministrativeExpensesPolicyTextBlock to us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodValueRestrictedStockAwardGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross">Vesting of restricted stock units</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:to="us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:title="label: StockIssuedDuringPeriodValueRestrictedStockAwardGross to us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross">Vesting of restricted stock units (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:to="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="label: StockIssuedDuringPeriodSharesRestrictedStockAwardGross to us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross1" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross1">Number of shares issued from vesting of restricted stock (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:to="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross1" xlink:title="label: StockIssuedDuringPeriodSharesRestrictedStockAwardGross to us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_lbl2" xml:lang="en-US" id="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_lbl2">Stock Issued During Period, Shares, Restricted Stock Award, Gross</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:to="us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_lbl2" xlink:title="label: StockIssuedDuringPeriodSharesRestrictedStockAwardGross to us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="LiabilityForUncertainTaxPositionsNoncurrent" xlink:title="LiabilityForUncertainTaxPositionsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xml:lang="en-US" id="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent">Uncertain tax positions</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilityForUncertainTaxPositionsNoncurrent" xlink:to="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" xlink:title="label: LiabilityForUncertainTaxPositionsNoncurrent to us-gaap_LiabilityForUncertainTaxPositionsNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_lbl1">Liability for Uncertainty in Income Taxes, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LiabilityForUncertainTaxPositionsNoncurrent" xlink:to="us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_lbl1" xlink:title="label: LiabilityForUncertainTaxPositionsNoncurrent to us-gaap_LiabilityForUncertainTaxPositionsNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward">Shares [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract">Restricted Stock Plan [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="SharesIssued" xlink:title="SharesIssued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesIssued" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_SharesIssued" xml:lang="en-US" id="us-gaap_SharesIssued">Balance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesIssued" xlink:to="us-gaap_SharesIssued" xlink:title="label: SharesIssued to us-gaap_SharesIssued" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesIssued1" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_SharesIssued1" xml:lang="en-US" id="us-gaap_SharesIssued1">Balance (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesIssued" xlink:to="us-gaap_SharesIssued1" xlink:title="label: SharesIssued to us-gaap_SharesIssued1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SharesIssued_lbl2" xml:lang="en-US" id="us-gaap_SharesIssued_lbl2">Shares, Issued</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SharesIssued" xlink:to="us-gaap_SharesIssued_lbl2" xlink:title="label: SharesIssued to us-gaap_SharesIssued_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="EarningsPerShareTextBlock" xlink:title="EarningsPerShareTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EarningsPerShareTextBlock" xml:lang="en-US" id="us-gaap_EarningsPerShareTextBlock">EARNINGS PER SHARE</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:title="label: EarningsPerShareTextBlock to us-gaap_EarningsPerShareTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract">Weighted average number of shares outstanding:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="label: WeightedAverageNumberOfSharesOutstandingAbstract to us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" xml:lang="en-US" id="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1">Denominator [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" xlink:title="label: WeightedAverageNumberOfSharesOutstandingAbstract to us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">Comprehensive income</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="label: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1">Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" xlink:title="label: ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest to us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="CommitmentsAndContingencies" xlink:title="CommitmentsAndContingencies" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingencies" xml:lang="en-US" id="us-gaap_CommitmentsAndContingencies">COMMITMENTS AND CONTINGENCIES (Note 6)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:title="label: CommitmentsAndContingencies to us-gaap_CommitmentsAndContingencies" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DividendsCommonStockCash" xlink:label="DividendsCommonStockCash" xlink:title="DividendsCommonStockCash" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DividendsCommonStockCash" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_DividendsCommonStockCash" xml:lang="en-US" id="us-gaap_DividendsCommonStockCash">Dividend Paid</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DividendsCommonStockCash" xlink:to="us-gaap_DividendsCommonStockCash" xlink:title="label: DividendsCommonStockCash to us-gaap_DividendsCommonStockCash" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DividendsCommonStockCash_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DividendsCommonStockCash_lbl1" xml:lang="en-US" id="us-gaap_DividendsCommonStockCash_lbl1">Dividends, Common Stock, Cash</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DividendsCommonStockCash" xlink:to="us-gaap_DividendsCommonStockCash_lbl1" xlink:title="label: DividendsCommonStockCash to us-gaap_DividendsCommonStockCash_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xml:lang="en-US" id="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">Adjustments to reconcile net income to net cash used in operating activities:</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="label: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xml:lang="en-US" id="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities">Total adjustments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:title="label: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_lbl1" xml:lang="en-US" id="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_lbl1">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_lbl1" xlink:title="label: AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities to us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableTradeCurrent" xlink:label="AccountsPayableTradeCurrent" xlink:title="AccountsPayableTradeCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountsPayableTradeCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountsPayableTradeCurrent" xml:lang="en-US" id="us-gaap_AccountsPayableTradeCurrent">Accounts payable-trade</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsPayableTradeCurrent" xlink:to="us-gaap_AccountsPayableTradeCurrent" xlink:title="label: AccountsPayableTradeCurrent to us-gaap_AccountsPayableTradeCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TaxesPayableCurrent" xlink:label="TaxesPayableCurrent" xlink:title="TaxesPayableCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TaxesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TaxesPayableCurrent" xml:lang="en-US" id="us-gaap_TaxesPayableCurrent">Income taxes payable</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent" xlink:title="label: TaxesPayableCurrent to us-gaap_TaxesPayableCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xml:lang="en-US" id="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">Stock-based compensation expense</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="label: AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue to us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xml:lang="en-US" id="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" xlink:title="label: AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue to us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAbstract" xlink:label="NetIncomeLossAbstract" xlink:title="NetIncomeLossAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NetIncomeLossAbstract" xml:lang="en-US" id="us-gaap_NetIncomeLossAbstract">Numerator [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NetIncomeLossAbstract" xlink:to="us-gaap_NetIncomeLossAbstract" xlink:title="label: NetIncomeLossAbstract to us-gaap_NetIncomeLossAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">Income before income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xml:lang="en-US" id="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" xlink:title="label: IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest to us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfStores" xlink:label="NumberOfStores" xlink:title="NumberOfStores" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NumberOfStores" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_NumberOfStores" xml:lang="en-US" id="us-gaap_NumberOfStores">Number of stores</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfStores" xlink:to="us-gaap_NumberOfStores" xlink:title="label: NumberOfStores to us-gaap_NumberOfStores" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NumberOfStores_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NumberOfStores_lbl1" xml:lang="en-US" id="us-gaap_NumberOfStores_lbl1">Number of Stores</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfStores" xlink:to="us-gaap_NumberOfStores_lbl1" xlink:title="label: NumberOfStores to us-gaap_NumberOfStores_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xml:lang="en-US" id="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock">BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:to="us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="label: BasisOfPresentationAndSignificantAccountingPoliciesTextBlock to us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="ScheduleOfInventoryCurrentTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfInventoryCurrentTableTextBlock">Inventory</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:title="label: ScheduleOfInventoryCurrentTableTextBlock to us-gaap_ScheduleOfInventoryCurrentTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xml:lang="en-US" id="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" xlink:title="label: ScheduleOfInventoryCurrentTableTextBlock to us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="CommitmentsAndContingenciesDisclosureAbstract" xlink:title="CommitmentsAndContingenciesDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xml:lang="en-US" id="us-gaap_CommitmentsAndContingenciesDisclosureAbstract">COMMITMENTS AND CONTINGENCIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:title="label: CommitmentsAndContingenciesDisclosureAbstract to us-gaap_CommitmentsAndContingenciesDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncomeTaxDisclosureAbstract" xml:lang="en-US" id="us-gaap_IncomeTaxDisclosureAbstract">INCOME TAX [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract" xlink:title="label: IncomeTaxDisclosureAbstract to us-gaap_IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtDisclosureAbstract" xml:lang="en-US" id="us-gaap_DebtDisclosureAbstract">NOTES PAYABLE AND LONG-TERM DEBT [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract" xlink:title="label: DebtDisclosureAbstract to us-gaap_DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:label="ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:title="ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock">Non-vested, Service-based Awards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:to="us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:title="label: ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock to us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xml:lang="en-US" id="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">STOCK-BASED COMPENSATION [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="label: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="RestrictedStockUnitsRSUMember" xlink:title="RestrictedStockUnitsRSUMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RestrictedStockUnitsRSUMember" xml:lang="en-US" id="us-gaap_RestrictedStockUnitsRSUMember">Restricted Stock Units [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember" xlink:title="label: RestrictedStockUnitsRSUMember to us-gaap_RestrictedStockUnitsRSUMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RestrictedStockUnitsRSUMember1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RestrictedStockUnitsRSUMember1" xml:lang="en-US" id="us-gaap_RestrictedStockUnitsRSUMember1">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="us-gaap_RestrictedStockUnitsRSUMember1" xlink:title="label: RestrictedStockUnitsRSUMember to us-gaap_RestrictedStockUnitsRSUMember1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccountingPoliciesAbstract" xml:lang="en-US" id="us-gaap_AccountingPoliciesAbstract">BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract" xlink:title="label: AccountingPoliciesAbstract to us-gaap_AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:label="IncreaseDecreaseInOtherCurrentAssets" xlink:title="IncreaseDecreaseInOtherCurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInOtherCurrentAssets" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherCurrentAssets">Other current assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherCurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:title="label: IncreaseDecreaseInOtherCurrentAssets to us-gaap_IncreaseDecreaseInOtherCurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1">Increase (Decrease) in Other Current Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherCurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" xlink:title="label: IncreaseDecreaseInOtherCurrentAssets to us-gaap_IncreaseDecreaseInOtherCurrentAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:label="IncreaseDecreaseInOtherNoncurrentAssets" xlink:title="IncreaseDecreaseInOtherNoncurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets">Other assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherNoncurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:title="label: IncreaseDecreaseInOtherNoncurrentAssets to us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl1">Increase (Decrease) in Other Noncurrent Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOtherNoncurrentAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl1" xlink:title="label: IncreaseDecreaseInOtherNoncurrentAssets to us-gaap_IncreaseDecreaseInOtherNoncurrentAssets_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">Computation of Basic and Diluted EPS</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="label: ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock to us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:label="ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:title="ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xml:lang="en-US" id="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock">Activity of Restricted Stock and RSU Awards</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:to="us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:title="label: ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock to us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:title="ScheduleOfFiniteLivedIntangibleAssetsTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xml:lang="en-US" id="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable">Schedule of Finite-Lived Intangible Assets [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:title="label: ScheduleOfFiniteLivedIntangibleAssetsTable to us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward">Weighted Average Share Price [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl1">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:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">Forfeited (in dollars per share)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="ComprehensiveIncomePolicyPolicyTextBlock" xlink:title="ComprehensiveIncomePolicyPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xml:lang="en-US" id="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock">Comprehensive Income (loss)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ComprehensiveIncomePolicyPolicyTextBlock" xlink:to="us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" xlink:title="label: ComprehensiveIncomePolicyPolicyTextBlock to us-gaap_ComprehensiveIncomePolicyPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="BalanceSheetLocationAxis" xlink:title="BalanceSheetLocationAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BalanceSheetLocationAxis" xml:lang="en-US" id="us-gaap_BalanceSheetLocationAxis">Balance Sheet Location [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:title="label: BalanceSheetLocationAxis to us-gaap_BalanceSheetLocationAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="PlanNameAxis" xlink:title="PlanNameAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PlanNameAxis" xml:lang="en-US" id="us-gaap_PlanNameAxis">Plan Name [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PlanNameAxis" xlink:to="us-gaap_PlanNameAxis" xlink:title="label: PlanNameAxis to us-gaap_PlanNameAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="PlanNameDomain" xlink:title="PlanNameDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PlanNameDomain" xml:lang="en-US" id="us-gaap_PlanNameDomain">Plan Name [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PlanNameDomain" xlink:to="us-gaap_PlanNameDomain" xlink:title="label: PlanNameDomain to us-gaap_PlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AwardTypeAxis" xml:lang="en-US" id="us-gaap_AwardTypeAxis">Award Type [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis" xlink:title="label: AwardTypeAxis to us-gaap_AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:title="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xml:lang="en-US" id="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">Weighted average amortization period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:to="us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:title="label: AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife to us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:label="AccruedLiabilitiesAndOtherLiabilities" xlink:title="AccruedLiabilitiesAndOtherLiabilities" />
    <link:label xlink:type="resource" xlink:label="us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_AccruedLiabilitiesAndOtherLiabilities" xml:lang="en-US" id="us-gaap_AccruedLiabilitiesAndOtherLiabilities">Accrued expenses and other liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesAndOtherLiabilities" xlink:to="us-gaap_AccruedLiabilitiesAndOtherLiabilities" xlink:title="label: AccruedLiabilitiesAndOtherLiabilities to us-gaap_AccruedLiabilitiesAndOtherLiabilities" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="PropertyPlantAndEquipmentUsefulLife" xlink:title="PropertyPlantAndEquipmentUsefulLife" />
    <link:label xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_PropertyPlantAndEquipmentUsefulLife" xml:lang="en-US" id="us-gaap_PropertyPlantAndEquipmentUsefulLife">Estimated useful lives of assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PropertyPlantAndEquipmentUsefulLife" xlink:to="us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:title="label: PropertyPlantAndEquipmentUsefulLife to us-gaap_PropertyPlantAndEquipmentUsefulLife" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">Amortization expense, 2026</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:title="label: FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths to us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">Amortization expense, 2027</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:title="label: FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo to us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">Amortization expense, 2028</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:title="label: FiniteLivedIntangibleAssetsAmortizationExpenseYearThree to us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">Amortization expense, 2029</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:title="label: FiniteLivedIntangibleAssetsAmortizationExpenseYearFour to us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xml:lang="en-US" id="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear">Amortization expense, 2025</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:title="label: FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear to us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1">Vesting period from grant date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl1" xml:lang="en-US" id="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 to us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfOperatingSegments" xlink:label="NumberOfOperatingSegments" xlink:title="NumberOfOperatingSegments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NumberOfOperatingSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NumberOfOperatingSegments" xml:lang="en-US" id="us-gaap_NumberOfOperatingSegments">Number of operating segments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfOperatingSegments" xlink:to="us-gaap_NumberOfOperatingSegments" xlink:title="label: NumberOfOperatingSegments to us-gaap_NumberOfOperatingSegments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="NumberOfReportableSegments" xlink:title="NumberOfReportableSegments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_NumberOfReportableSegments" xml:lang="en-US" id="us-gaap_NumberOfReportableSegments">Number of reporting segments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfReportableSegments" xlink:to="us-gaap_NumberOfReportableSegments" xlink:title="label: NumberOfReportableSegments to us-gaap_NumberOfReportableSegments" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="ConcentrationRiskPercentage1" xlink:title="ConcentrationRiskPercentage1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ConcentrationRiskPercentage1" xml:lang="en-US" id="us-gaap_ConcentrationRiskPercentage1">Revenue percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:title="label: ConcentrationRiskPercentage1 to us-gaap_ConcentrationRiskPercentage1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ConcentrationRiskPercentage1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ConcentrationRiskPercentage1_lbl1" xml:lang="en-US" id="us-gaap_ConcentrationRiskPercentage1_lbl1">Concentration Risk, Percentage</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1_lbl1" xlink:title="label: ConcentrationRiskPercentage1 to us-gaap_ConcentrationRiskPercentage1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xml:lang="en-US" id="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">Foreign currency translation adjustments, net of tax</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:to="us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="label: OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax to us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain" xlink:title="BalanceSheetLocationDomain" />
    <link:label xlink:type="resource" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_BalanceSheetLocationDomain" xml:lang="en-US" id="us-gaap_BalanceSheetLocationDomain">Balance Sheet Location [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:title="label: BalanceSheetLocationDomain to us-gaap_BalanceSheetLocationDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntellectualPropertyMember" xlink:label="IntellectualPropertyMember" xlink:title="IntellectualPropertyMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IntellectualPropertyMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IntellectualPropertyMember" xml:lang="en-US" id="us-gaap_IntellectualPropertyMember">Trademarks/Copyrights [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntellectualPropertyMember" xlink:to="us-gaap_IntellectualPropertyMember" xlink:title="label: IntellectualPropertyMember to us-gaap_IntellectualPropertyMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IntellectualPropertyMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IntellectualPropertyMember_lbl1" xml:lang="en-US" id="us-gaap_IntellectualPropertyMember_lbl1">Intellectual Property [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IntellectualPropertyMember" xlink:to="us-gaap_IntellectualPropertyMember_lbl1" xlink:title="label: IntellectualPropertyMember to us-gaap_IntellectualPropertyMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xml:lang="en-US" id="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1">Basis points interest rate</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="label: DebtInstrumentBasisSpreadOnVariableRate1 to us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_SalesRevenueNetMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_SalesRevenueNetMember" xml:lang="en-US" id="us-gaap_SalesRevenueNetMember">Sales [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember" xlink:title="label: SalesRevenueNetMember to us-gaap_SalesRevenueNetMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTerm" xlink:label="DebtInstrumentTerm" xlink:title="DebtInstrumentTerm" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentTerm" xml:lang="en-US" id="us-gaap_DebtInstrumentTerm">Maturity period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentTerm" xlink:to="us-gaap_DebtInstrumentTerm" xlink:title="label: DebtInstrumentTerm to us-gaap_DebtInstrumentTerm" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xml:lang="en-US" id="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">Remaining repurchase of common stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:to="us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="label: StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1 to us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_DeferredIncomeTaxAssetsNet" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxAssetsNet">Deferred income taxes</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet" xlink:title="label: DeferredIncomeTaxAssetsNet to us-gaap_DeferredIncomeTaxAssetsNet" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxAssetsNet_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredIncomeTaxAssetsNet_lbl1" xml:lang="en-US" id="us-gaap_DeferredIncomeTaxAssetsNet_lbl1">Deferred Income Tax Assets, Net</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredIncomeTaxAssetsNet" xlink:to="us-gaap_DeferredIncomeTaxAssetsNet_lbl1" xlink:title="label: DeferredIncomeTaxAssetsNet to us-gaap_DeferredIncomeTaxAssetsNet_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockCommonMember" xml:lang="en-US" id="us-gaap_TreasuryStockCommonMember">Treasury Stock [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember" xlink:title="label: TreasuryStockCommonMember to us-gaap_TreasuryStockCommonMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="TreasuryStockCommonShares" xlink:title="TreasuryStockCommonShares" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockCommonShares" xml:lang="en-US" id="us-gaap_TreasuryStockCommonShares">Treasury stock, shares (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares" xlink:title="label: TreasuryStockCommonShares to us-gaap_TreasuryStockCommonShares" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonValue" xlink:label="TreasuryStockCommonValue" xlink:title="TreasuryStockCommonValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonValue" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_TreasuryStockCommonValue" xml:lang="en-US" id="us-gaap_TreasuryStockCommonValue">Treasury stock at cost (1,424,376 shares at March 31, 2025 and December 31, 2024)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonValue" xlink:to="us-gaap_TreasuryStockCommonValue" xlink:title="label: TreasuryStockCommonValue to us-gaap_TreasuryStockCommonValue" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonValue1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_TreasuryStockCommonValue1" xml:lang="en-US" id="us-gaap_TreasuryStockCommonValue1">Share repurchase amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonValue" xlink:to="us-gaap_TreasuryStockCommonValue1" xlink:title="label: TreasuryStockCommonValue to us-gaap_TreasuryStockCommonValue1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonValue_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_TreasuryStockCommonValue_lbl2" xml:lang="en-US" id="us-gaap_TreasuryStockCommonValue_lbl2">Treasury Stock, Common, Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TreasuryStockCommonValue" xlink:to="us-gaap_TreasuryStockCommonValue_lbl2" xlink:title="label: TreasuryStockCommonValue to us-gaap_TreasuryStockCommonValue_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredRevenueRevenueRecognized1" xlink:label="DeferredRevenueRevenueRecognized1" xlink:title="DeferredRevenueRevenueRecognized1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DeferredRevenueRevenueRecognized1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DeferredRevenueRevenueRecognized1" xml:lang="en-US" id="us-gaap_DeferredRevenueRevenueRecognized1">Deferred revenue, recognized</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DeferredRevenueRevenueRecognized1" xlink:to="us-gaap_DeferredRevenueRevenueRecognized1" xlink:title="label: DeferredRevenueRevenueRecognized1 to us-gaap_DeferredRevenueRevenueRecognized1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueAbstract" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueAbstract">Disaggregated Revenue [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="us-gaap_DisaggregationOfRevenueAbstract" xlink:title="label: DisaggregationOfRevenueAbstract to us-gaap_DisaggregationOfRevenueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="DisaggregationOfRevenueTableTextBlock" xlink:title="DisaggregationOfRevenueTableTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueTableTextBlock" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTableTextBlock">Disaggregated Revenue</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTableTextBlock" xlink:to="us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:title="label: DisaggregationOfRevenueTableTextBlock to us-gaap_DisaggregationOfRevenueTableTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueTable" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueTable">Disaggregation of Revenue [Table]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueTable" xlink:to="us-gaap_DisaggregationOfRevenueTable" xlink:title="label: DisaggregationOfRevenueTable to us-gaap_DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DisaggregationOfRevenueLineItems" xml:lang="en-US" id="us-gaap_DisaggregationOfRevenueLineItems">Disaggregation of Revenue [Line Items]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="us-gaap_DisaggregationOfRevenueLineItems" xlink:title="label: DisaggregationOfRevenueLineItems to us-gaap_DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:label="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:title="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss">Sales return allowance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:to="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:title="label: ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss to us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss_lbl1">Contract with Customer, Asset, Allowance for Credit Loss</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:to="us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss_lbl1" xlink:title="label: ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss to us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="ContractWithCustomerLiabilityRevenueRecognized" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiabilityRevenueRecognized">Revenue recognized from change in deferred obligation balance</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiabilityRevenueRecognized" xlink:to="us-gaap_ContractWithCustomerLiabilityRevenueRecognized" xlink:title="label: ContractWithCustomerLiabilityRevenueRecognized to us-gaap_ContractWithCustomerLiabilityRevenueRecognized" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerAbstract" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerAbstract">Revenue Recognition [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:title="label: RevenueFromContractWithCustomerAbstract to us-gaap_RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="ContractWithCustomerLiability" xlink:title="ContractWithCustomerLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ContractWithCustomerLiability" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiability">Contract with customer liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability" xlink:title="label: ContractWithCustomerLiability to us-gaap_ContractWithCustomerLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ContractWithCustomerLiability_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ContractWithCustomerLiability_lbl1" xml:lang="en-US" id="us-gaap_ContractWithCustomerLiability_lbl1">Contract with Customer, Liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability_lbl1" xlink:title="label: ContractWithCustomerLiability to us-gaap_ContractWithCustomerLiability_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseRightOfUseAsset" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAsset">Operating lease assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:title="label: OperatingLeaseRightOfUseAsset to us-gaap_OperatingLeaseRightOfUseAsset" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">Net sales</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="label: RevenueFromContractWithCustomerExcludingAssessedTax to us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1">Sales</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" xlink:title="label: RevenueFromContractWithCustomerExcludingAssessedTax to us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US" id="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">Effect of exchange rate changes on cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="label: EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">Net increase in cash and cash equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">Cash and cash equivalents, end of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1">Cash and cash equivalents, beginning of period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xml:lang="en-US" id="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" xlink:title="label: CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents to us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="FinanceLeasePrincipalPayments" xlink:title="FinanceLeasePrincipalPayments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:title="us-gaap_FinanceLeasePrincipalPayments" xml:lang="en-US" id="us-gaap_FinanceLeasePrincipalPayments">Payment of finance lease obligations</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:title="label: FinanceLeasePrincipalPayments to us-gaap_FinanceLeasePrincipalPayments" />
    <link:label xlink:type="resource" xlink:label="us-gaap_FinanceLeasePrincipalPayments_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_FinanceLeasePrincipalPayments_lbl1" xml:lang="en-US" id="us-gaap_FinanceLeasePrincipalPayments_lbl1">Finance Lease, Principal Payments</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments_lbl1" xlink:title="label: FinanceLeasePrincipalPayments to us-gaap_FinanceLeasePrincipalPayments_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiabilityCurrent" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityCurrent">Current portion of operating lease liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:title="label: OperatingLeaseLiabilityCurrent to us-gaap_OperatingLeaseLiabilityCurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityCurrent_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityCurrent_lbl1">Operating Lease, Liability, Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl1" xlink:title="label: OperatingLeaseLiabilityCurrent to us-gaap_OperatingLeaseLiabilityCurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrent">Operating lease liabilities, non-current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:title="label: OperatingLeaseLiabilityNoncurrent to us-gaap_OperatingLeaseLiabilityNoncurrent" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" xml:lang="en-US" id="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1">Operating Lease, Liability, Noncurrent</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" xlink:title="label: OperatingLeaseLiabilityNoncurrent to us-gaap_OperatingLeaseLiabilityNoncurrent_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeLeasesPolicyTextBlock" xlink:label="LesseeLeasesPolicyTextBlock" xlink:title="LesseeLeasesPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_LesseeLeasesPolicyTextBlock" xml:lang="en-US" id="us-gaap_LesseeLeasesPolicyTextBlock">Leases</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeLeasesPolicyTextBlock" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock" xlink:title="label: LesseeLeasesPolicyTextBlock to us-gaap_LesseeLeasesPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeLeasesPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeLeasesPolicyTextBlock_lbl1" xml:lang="en-US" id="us-gaap_LesseeLeasesPolicyTextBlock_lbl1">Lessee, Leases [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeLeasesPolicyTextBlock" xlink:to="us-gaap_LesseeLeasesPolicyTextBlock_lbl1" xlink:title="label: LesseeLeasesPolicyTextBlock to us-gaap_LesseeLeasesPolicyTextBlock_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="LesseeOperatingLeaseTermOfContract" xlink:title="LesseeOperatingLeaseTermOfContract" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseTermOfContract" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseTermOfContract">Lease, term of contract</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseTermOfContract" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:title="label: LesseeOperatingLeaseTermOfContract to us-gaap_LesseeOperatingLeaseTermOfContract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:label="LesseeOperatingLeaseRenewalTerm" xlink:title="LesseeOperatingLeaseRenewalTerm" />
    <link:label xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_LesseeOperatingLeaseRenewalTerm" xml:lang="en-US" id="us-gaap_LesseeOperatingLeaseRenewalTerm">Lease, renewal term</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LesseeOperatingLeaseRenewalTerm" xlink:to="us-gaap_LesseeOperatingLeaseRenewalTerm" xlink:title="label: LesseeOperatingLeaseRenewalTerm to us-gaap_LesseeOperatingLeaseRenewalTerm" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="RevenueFromContractWithCustomerPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xml:lang="en-US" id="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">Revenue Recognition</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueFromContractWithCustomerPolicyTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="label: RevenueFromContractWithCustomerPolicyTextBlock to us-gaap_RevenueFromContractWithCustomerPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedPaymentArrangementEmployeeMember" xlink:label="ShareBasedPaymentArrangementEmployeeMember" xlink:title="ShareBasedPaymentArrangementEmployeeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedPaymentArrangementEmployeeMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="us-gaap_ShareBasedPaymentArrangementEmployeeMember" xml:lang="en-US" id="us-gaap_ShareBasedPaymentArrangementEmployeeMember">Key Employees [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedPaymentArrangementEmployeeMember" xlink:to="us-gaap_ShareBasedPaymentArrangementEmployeeMember" xlink:title="label: ShareBasedPaymentArrangementEmployeeMember to us-gaap_ShareBasedPaymentArrangementEmployeeMember" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedPaymentArrangementEmployeeMember1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_ShareBasedPaymentArrangementEmployeeMember1" xml:lang="en-US" id="us-gaap_ShareBasedPaymentArrangementEmployeeMember1">Employees [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedPaymentArrangementEmployeeMember" xlink:to="us-gaap_ShareBasedPaymentArrangementEmployeeMember1" xlink:title="label: ShareBasedPaymentArrangementEmployeeMember to us-gaap_ShareBasedPaymentArrangementEmployeeMember1" />
    <link:label xlink:type="resource" xlink:label="us-gaap_ShareBasedPaymentArrangementEmployeeMember_lbl2" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_ShareBasedPaymentArrangementEmployeeMember_lbl2" xml:lang="en-US" id="us-gaap_ShareBasedPaymentArrangementEmployeeMember_lbl2">Share-Based Payment Arrangement, Employee [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedPaymentArrangementEmployeeMember" xlink:to="us-gaap_ShareBasedPaymentArrangementEmployeeMember_lbl2" xlink:title="label: ShareBasedPaymentArrangementEmployeeMember to us-gaap_ShareBasedPaymentArrangementEmployeeMember_lbl2" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:label="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xml:lang="en-US" id="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock">Accounts Receivable - Trade and Expected Credit Losses</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CreditLossFinancialInstrumentPolicyTextBlock" xlink:to="us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="label: CreditLossFinancialInstrumentPolicyTextBlock to us-gaap_CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:title="OperatingLeaseRightOfUseAssetAmortizationExpense" />
    <link:label xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xml:lang="en-US" id="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense">Operating lease asset amortization</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:to="us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:title="label: OperatingLeaseRightOfUseAssetAmortizationExpense to us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="IncreaseDecreaseInOperatingLeaseLiability" xlink:title="IncreaseDecreaseInOperatingLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOperatingLeaseLiability">Operating lease liabilities</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOperatingLeaseLiability" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:title="label: IncreaseDecreaseInOperatingLeaseLiability to us-gaap_IncreaseDecreaseInOperatingLeaseLiability" />
    <link:label xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl1" xml:lang="en-US" id="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl1">Increase (Decrease) in Operating Lease Liability</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="IncreaseDecreaseInOperatingLeaseLiability" xlink:to="us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl1" xlink:title="label: IncreaseDecreaseInOperatingLeaseLiability to us-gaap_IncreaseDecreaseInOperatingLeaseLiability_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:label="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:title="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" />
    <link:label xlink:type="resource" xlink:label="us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xml:lang="en-US" id="us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration">Debt Instrument, Variable Interest Rate, Type [Extensible Enumeration]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:to="us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:title="label: DebtInstrumentVariableInterestRateTypeExtensibleEnumeration to us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:label xlink:type="resource" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_TitleOfIndividualWithRelationshipToEntityDomain" xml:lang="en-US" id="srt_TitleOfIndividualWithRelationshipToEntityDomain">Title and Position [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="label: TitleOfIndividualWithRelationshipToEntityDomain to srt_TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_DirectorMember" xlink:label="DirectorMember" xlink:title="DirectorMember" />
    <link:label xlink:type="resource" xlink:label="srt_DirectorMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_DirectorMember" xml:lang="en-US" id="srt_DirectorMember">Board of Directors [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DirectorMember" xlink:to="srt_DirectorMember" xlink:title="label: DirectorMember to srt_DirectorMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ChiefExecutiveOfficerMember" xlink:label="ChiefExecutiveOfficerMember" xlink:title="ChiefExecutiveOfficerMember" />
    <link:label xlink:type="resource" xlink:label="srt_ChiefExecutiveOfficerMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ChiefExecutiveOfficerMember" xml:lang="en-US" id="srt_ChiefExecutiveOfficerMember">Chief Executive Officer [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ChiefExecutiveOfficerMember" xlink:to="srt_ChiefExecutiveOfficerMember" xlink:title="label: ChiefExecutiveOfficerMember to srt_ChiefExecutiveOfficerMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:label xlink:type="resource" xlink:label="srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_SegmentGeographicalDomain" xml:lang="en-US" id="srt_SegmentGeographicalDomain">Geographical [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain" xlink:title="label: SegmentGeographicalDomain to srt_SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:label xlink:type="resource" xlink:label="srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_StatementGeographicalAxis" xml:lang="en-US" id="srt_StatementGeographicalAxis">Geographical [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis" xlink:title="label: StatementGeographicalAxis to srt_StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:label xlink:type="resource" xlink:label="srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_RangeAxis" xml:lang="en-US" id="srt_RangeAxis">Statistical Measurement [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RangeAxis" xlink:to="srt_RangeAxis" xlink:title="label: RangeAxis to srt_RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:label xlink:type="resource" xlink:label="srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_RangeMember" xml:lang="en-US" id="srt_RangeMember">Statistical Measurement [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RangeMember" xlink:to="srt_RangeMember" xlink:title="label: RangeMember to srt_RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:label xlink:type="resource" xlink:label="srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_MaximumMember" xml:lang="en-US" id="srt_MaximumMember">Maximum [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MaximumMember" xlink:to="srt_MaximumMember" xlink:title="label: MaximumMember to srt_MaximumMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:label xlink:type="resource" xlink:label="srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_MinimumMember" xml:lang="en-US" id="srt_MinimumMember">Minimum [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="MinimumMember" xlink:to="srt_MinimumMember" xlink:title="label: MinimumMember to srt_MinimumMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="ShareRepurchaseProgramAxis" xlink:title="ShareRepurchaseProgramAxis" />
    <link:label xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ShareRepurchaseProgramAxis" xml:lang="en-US" id="srt_ShareRepurchaseProgramAxis">Share Repurchase Program [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramAxis" xlink:title="label: ShareRepurchaseProgramAxis to srt_ShareRepurchaseProgramAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain" xlink:title="ShareRepurchaseProgramDomain" />
    <link:label xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_ShareRepurchaseProgramDomain" xml:lang="en-US" id="srt_ShareRepurchaseProgramDomain">Share Repurchase Program [Domain]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramDomain" xlink:to="srt_ShareRepurchaseProgramDomain" xlink:title="label: ShareRepurchaseProgramDomain to srt_ShareRepurchaseProgramDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:label xlink:type="resource" xlink:label="srt_TitleOfIndividualAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_TitleOfIndividualAxis" xml:lang="en-US" id="srt_TitleOfIndividualAxis">Title and Position [Axis]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis" xlink:title="label: TitleOfIndividualAxis to srt_TitleOfIndividualAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="StockRepurchaseProgramAuthorizedAmount1" xlink:title="StockRepurchaseProgramAuthorizedAmount1" />
    <link:label xlink:type="resource" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="srt_StockRepurchaseProgramAuthorizedAmount1" xml:lang="en-US" id="srt_StockRepurchaseProgramAuthorizedAmount1">Repurchase of common stock</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramAuthorizedAmount1" xlink:to="srt_StockRepurchaseProgramAuthorizedAmount1" xlink:title="label: StockRepurchaseProgramAuthorizedAmount1 to srt_StockRepurchaseProgramAuthorizedAmount1" />
    <link:label xlink:type="resource" xlink:label="srt_StockRepurchaseProgramAuthorizedAmount1_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="srt_StockRepurchaseProgramAuthorizedAmount1_lbl1" xml:lang="en-US" id="srt_StockRepurchaseProgramAuthorizedAmount1_lbl1">Share Repurchase Program, Authorized, Amount</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramAuthorizedAmount1" xlink:to="srt_StockRepurchaseProgramAuthorizedAmount1_lbl1" xlink:title="label: StockRepurchaseProgramAuthorizedAmount1 to srt_StockRepurchaseProgramAuthorizedAmount1_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CA" xlink:label="CA" xlink:title="CA" />
    <link:label xlink:type="resource" xlink:label="country_CA" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="country_CA" xml:lang="en-US" id="country_CA">Canada [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CA" xlink:to="country_CA" xlink:title="label: CA to country_CA" />
    <link:label xlink:type="resource" xlink:label="country_CA_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_CA_lbl1" xml:lang="en-US" id="country_CA_lbl1">CANADA</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CA" xlink:to="country_CA_lbl1" xlink:title="label: CA to country_CA_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_ES" xlink:label="ES" xlink:title="ES" />
    <link:label xlink:type="resource" xlink:label="country_ES" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_ES" xml:lang="en-US" id="country_ES">Spain [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ES" xlink:to="country_ES" xlink:title="label: ES to country_ES" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:label xlink:type="resource" xlink:label="country_US" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="country_US" xml:lang="en-US" id="country_US">United States [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="US" xlink:to="country_US" xlink:title="label: US to country_US" />
    <link:label xlink:type="resource" xlink:label="country_US_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="country_US_lbl1" xml:lang="en-US" id="country_US_lbl1">UNITED STATES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="US" xlink:to="country_US_lbl1" xlink:title="label: US to country_US_lbl1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:label xlink:type="resource" xlink:label="dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CoverAbstract" xml:lang="en-US" id="dei_CoverAbstract">Cover [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CoverAbstract" xlink:to="dei_CoverAbstract" xlink:title="label: CoverAbstract to dei_CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentType" xml:lang="en-US" id="dei_DocumentType">Document Type</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentType" xlink:to="dei_DocumentType" xlink:title="label: DocumentType to dei_DocumentType" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="DocumentQuarterlyReport" xlink:title="DocumentQuarterlyReport" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentQuarterlyReport" xml:lang="en-US" id="dei_DocumentQuarterlyReport">Document Quarterly Report</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport" xlink:title="label: DocumentQuarterlyReport to dei_DocumentQuarterlyReport" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="DocumentTransitionReport" xlink:title="DocumentTransitionReport" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentTransitionReport" xml:lang="en-US" id="dei_DocumentTransitionReport">Document Transition Report</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport" xlink:title="label: DocumentTransitionReport to dei_DocumentTransitionReport" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="EntityInteractiveDataCurrent" xlink:title="EntityInteractiveDataCurrent" />
    <link:label xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityInteractiveDataCurrent" xml:lang="en-US" id="dei_EntityInteractiveDataCurrent">Entity Interactive Data Current</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent" xlink:title="label: EntityInteractiveDataCurrent to dei_EntityInteractiveDataCurrent" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:label xlink:type="resource" xlink:label="dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_AmendmentFlag" xml:lang="en-US" id="dei_AmendmentFlag">Amendment Flag</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AmendmentFlag" xlink:to="dei_AmendmentFlag" xlink:title="label: AmendmentFlag to dei_AmendmentFlag" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalYearFocus" xml:lang="en-US" id="dei_DocumentFiscalYearFocus">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus" xlink:title="label: DocumentFiscalYearFocus to dei_DocumentFiscalYearFocus" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentFiscalPeriodFocus" xml:lang="en-US" id="dei_DocumentFiscalPeriodFocus">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:title="label: DocumentFiscalPeriodFocus to dei_DocumentFiscalPeriodFocus" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_DocumentPeriodEndDate" xml:lang="en-US" id="dei_DocumentPeriodEndDate">Document Period End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate" xlink:title="label: DocumentPeriodEndDate to dei_DocumentPeriodEndDate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:label xlink:type="resource" xlink:label="dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityRegistrantName" xml:lang="en-US" id="dei_EntityRegistrantName">Entity Registrant Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityRegistrantName" xlink:to="dei_EntityRegistrantName" xlink:title="label: EntityRegistrantName to dei_EntityRegistrantName" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCentralIndexKey" xml:lang="en-US" id="dei_EntityCentralIndexKey">Entity Central Index Key</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey" xlink:title="label: EntityCentralIndexKey to dei_EntityCentralIndexKey" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFileNumber" xml:lang="en-US" id="dei_EntityFileNumber">Entity File Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFileNumber" xlink:to="dei_EntityFileNumber" xlink:title="label: EntityFileNumber to dei_EntityFileNumber" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:label xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityTaxIdentificationNumber" xml:lang="en-US" id="dei_EntityTaxIdentificationNumber">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber" xlink:title="label: EntityTaxIdentificationNumber to dei_EntityTaxIdentificationNumber" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityIncorporationStateCountryCode" xml:lang="en-US" id="dei_EntityIncorporationStateCountryCode">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:title="label: EntityIncorporationStateCountryCode to dei_EntityIncorporationStateCountryCode" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="CurrentFiscalYearEndDate" xlink:title="CurrentFiscalYearEndDate" />
    <link:label xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CurrentFiscalYearEndDate" xml:lang="en-US" id="dei_CurrentFiscalYearEndDate">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate" xlink:title="label: CurrentFiscalYearEndDate to dei_CurrentFiscalYearEndDate" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="EntityCurrentReportingStatus" xlink:title="EntityCurrentReportingStatus" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCurrentReportingStatus" xml:lang="en-US" id="dei_EntityCurrentReportingStatus">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus" xlink:title="label: EntityCurrentReportingStatus to dei_EntityCurrentReportingStatus" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="EntityShellCompany" xlink:title="EntityShellCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityShellCompany" xml:lang="en-US" id="dei_EntityShellCompany">Entity Shell Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityShellCompany" xlink:to="dei_EntityShellCompany" xlink:title="label: EntityShellCompany to dei_EntityShellCompany" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="EntityFilerCategory" xlink:title="EntityFilerCategory" />
    <link:label xlink:type="resource" xlink:label="dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityFilerCategory" xml:lang="en-US" id="dei_EntityFilerCategory">Entity Filer Category</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityFilerCategory" xlink:to="dei_EntityFilerCategory" xlink:title="label: EntityFilerCategory to dei_EntityFilerCategory" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="EntitySmallBusiness" xlink:title="EntitySmallBusiness" />
    <link:label xlink:type="resource" xlink:label="dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntitySmallBusiness" xml:lang="en-US" id="dei_EntitySmallBusiness">Entity Small Business</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness" xlink:title="label: EntitySmallBusiness to dei_EntitySmallBusiness" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:label xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityEmergingGrowthCompany" xml:lang="en-US" id="dei_EntityEmergingGrowthCompany">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany" xlink:title="label: EntityEmergingGrowthCompany to dei_EntityEmergingGrowthCompany" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressAddressLine1" xml:lang="en-US" id="dei_EntityAddressAddressLine1">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1" xlink:title="label: EntityAddressAddressLine1 to dei_EntityAddressAddressLine1" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressCityOrTown" xml:lang="en-US" id="dei_EntityAddressCityOrTown">Entity Address, City or Town</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown" xlink:title="label: EntityAddressCityOrTown to dei_EntityAddressCityOrTown" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressStateOrProvince" xml:lang="en-US" id="dei_EntityAddressStateOrProvince">Entity Address, State or Province</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince" xlink:title="label: EntityAddressStateOrProvince to dei_EntityAddressStateOrProvince" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:label xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityAddressPostalZipCode" xml:lang="en-US" id="dei_EntityAddressPostalZipCode">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode" xlink:title="label: EntityAddressPostalZipCode to dei_EntityAddressPostalZipCode" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:label xlink:type="resource" xlink:label="dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_CityAreaCode" xml:lang="en-US" id="dei_CityAreaCode">City Area Code</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="CityAreaCode" xlink:to="dei_CityAreaCode" xlink:title="label: CityAreaCode to dei_CityAreaCode" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:label xlink:type="resource" xlink:label="dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_LocalPhoneNumber" xml:lang="en-US" id="dei_LocalPhoneNumber">Local Phone Number</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber" xlink:title="label: LocalPhoneNumber to dei_LocalPhoneNumber" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:label xlink:type="resource" xlink:label="dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_Security12bTitle" xml:lang="en-US" id="dei_Security12bTitle">Title of 12(b) Security</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="Security12bTitle" xlink:to="dei_Security12bTitle" xlink:title="label: Security12bTitle to dei_Security12bTitle" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:label xlink:type="resource" xlink:label="dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_TradingSymbol" xml:lang="en-US" id="dei_TradingSymbol">Trading Symbol</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TradingSymbol" xlink:to="dei_TradingSymbol" xlink:title="label: TradingSymbol to dei_TradingSymbol" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:label xlink:type="resource" xlink:label="dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_SecurityExchangeName" xml:lang="en-US" id="dei_SecurityExchangeName">Security Exchange Name</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SecurityExchangeName" xlink:to="dei_SecurityExchangeName" xlink:title="label: SecurityExchangeName to dei_SecurityExchangeName" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="EntityCommonStockSharesOutstanding" xlink:title="EntityCommonStockSharesOutstanding" />
    <link:label xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="dei_EntityCommonStockSharesOutstanding" xml:lang="en-US" id="dei_EntityCommonStockSharesOutstanding">Entity Common Stock, Shares Outstanding</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:title="label: EntityCommonStockSharesOutstanding to dei_EntityCommonStockSharesOutstanding" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_JPMorganChaseBankNAMember" xlink:label="JPMorganChaseBankNAMember" xlink:title="JPMorganChaseBankNAMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_JPMorganChaseBankNAMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_JPMorganChaseBankNAMember_lbl" xml:lang="en-US" id="tlfa_JPMorganChaseBankNAMember_lbl">The name of lender will provide the line of credit facility under the credit agreement.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="JPMorganChaseBankNAMember" xlink:to="tlfa_JPMorganChaseBankNAMember_lbl" xlink:title="label: JPMorganChaseBankNAMember to tlfa_JPMorganChaseBankNAMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_JPMorganChaseBankNAMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_JPMorganChaseBankNAMember_lbl1" xml:lang="en-US" id="tlfa_JPMorganChaseBankNAMember_lbl1">JP Morgan Chase Bank, N.A. [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="JPMorganChaseBankNAMember" xlink:to="tlfa_JPMorganChaseBankNAMember_lbl1" xlink:title="label: JPMorganChaseBankNAMember to tlfa_JPMorganChaseBankNAMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" xlink:label="AccountsReceivableAndExpectedCreditLossesAbstract" xlink:title="AccountsReceivableAndExpectedCreditLossesAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract_lbl1" xml:lang="en-US" id="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract_lbl1">Accounts Receivable And Expected Credit Losses [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableAndExpectedCreditLossesAbstract" xlink:to="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract_lbl1" xlink:title="label: AccountsReceivableAndExpectedCreditLossesAbstract to tlfa_AccountsReceivableAndExpectedCreditLossesAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" xml:lang="en-US" id="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract">Accounts Receivable and Expected Credit Losses [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccountsReceivableAndExpectedCreditLossesAbstract" xlink:to="tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" xlink:title="label: AccountsReceivableAndExpectedCreditLossesAbstract to tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_FairValueOfFinancialInstrumentsAbstract" xlink:label="FairValueOfFinancialInstrumentsAbstract" xlink:title="FairValueOfFinancialInstrumentsAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_FairValueOfFinancialInstrumentsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_FairValueOfFinancialInstrumentsAbstract_lbl1" xml:lang="en-US" id="tlfa_FairValueOfFinancialInstrumentsAbstract_lbl1">Fair Value of Financial Instruments [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueOfFinancialInstrumentsAbstract" xlink:to="tlfa_FairValueOfFinancialInstrumentsAbstract_lbl1" xlink:title="label: FairValueOfFinancialInstrumentsAbstract to tlfa_FairValueOfFinancialInstrumentsAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_FairValueOfFinancialInstrumentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_FairValueOfFinancialInstrumentsAbstract" xml:lang="en-US" id="tlfa_FairValueOfFinancialInstrumentsAbstract">Fair Value of Financial Instruments [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="FairValueOfFinancialInstrumentsAbstract" xlink:to="tlfa_FairValueOfFinancialInstrumentsAbstract" xlink:title="label: FairValueOfFinancialInstrumentsAbstract to tlfa_FairValueOfFinancialInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:label="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:title="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract_lbl1" xml:lang="en-US" id="tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract_lbl1">SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:to="tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract_lbl1" xlink:title="label: SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract to tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:label="ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:title="ShareRepurchaseProgramAndShareRepurchasesTextBlock" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl" xml:lang="en-US" id="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl">The entire disclosure for the share repurchase program and share repurchases.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:to="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl" xlink:title="label: ShareRepurchaseProgramAndShareRepurchasesTextBlock to tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl1" xml:lang="en-US" id="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl1">Share Repurchase Program and Share Repurchases [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:to="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl1" xlink:title="label: ShareRepurchaseProgramAndShareRepurchasesTextBlock to tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" xml:lang="en-US" id="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock">SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:to="tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:title="label: ShareRepurchaseProgramAndShareRepurchasesTextBlock to tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_StockRepurchaseProgramAbstract" xlink:label="StockRepurchaseProgramAbstract" xlink:title="StockRepurchaseProgramAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_StockRepurchaseProgramAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_StockRepurchaseProgramAbstract_lbl1" xml:lang="en-US" id="tlfa_StockRepurchaseProgramAbstract_lbl1">Stock Repurchase Program [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramAbstract" xlink:to="tlfa_StockRepurchaseProgramAbstract_lbl1" xlink:title="label: StockRepurchaseProgramAbstract to tlfa_StockRepurchaseProgramAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_StockRepurchaseProgramAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_StockRepurchaseProgramAbstract" xml:lang="en-US" id="tlfa_StockRepurchaseProgramAbstract">Share Repurchase Program and Share Repurchases [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="StockRepurchaseProgramAbstract" xlink:to="tlfa_StockRepurchaseProgramAbstract" xlink:title="label: StockRepurchaseProgramAbstract to tlfa_StockRepurchaseProgramAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareRepurchaseProgramMember" xlink:label="ShareRepurchaseProgramMember" xlink:title="ShareRepurchaseProgramMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_ShareRepurchaseProgramMember_lbl" xml:lang="en-US" id="tlfa_ShareRepurchaseProgramMember_lbl">Name of the share repurchase program.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramMember" xlink:to="tlfa_ShareRepurchaseProgramMember_lbl" xlink:title="label: ShareRepurchaseProgramMember to tlfa_ShareRepurchaseProgramMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareRepurchaseProgramMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_ShareRepurchaseProgramMember_lbl1" xml:lang="en-US" id="tlfa_ShareRepurchaseProgramMember_lbl1">Share Repurchase Program [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareRepurchaseProgramMember" xlink:to="tlfa_ShareRepurchaseProgramMember_lbl1" xlink:title="label: ShareRepurchaseProgramMember to tlfa_ShareRepurchaseProgramMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_RestrictedStockAndRestrictedStockUnitsMember" xlink:label="RestrictedStockAndRestrictedStockUnitsMember" xlink:title="RestrictedStockAndRestrictedStockUnitsMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl" xml:lang="en-US" id="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl">Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met and 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.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockAndRestrictedStockUnitsMember" xlink:to="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl" xlink:title="label: RestrictedStockAndRestrictedStockUnitsMember to tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl1" xml:lang="en-US" id="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl1">Restricted Stock and Restricted Stock Units [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockAndRestrictedStockUnitsMember" xlink:to="tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl1" xlink:title="label: RestrictedStockAndRestrictedStockUnitsMember to tlfa_RestrictedStockAndRestrictedStockUnitsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_RestrictedStockAndRestrictedStockUnitsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_RestrictedStockAndRestrictedStockUnitsMember" xml:lang="en-US" id="tlfa_RestrictedStockAndRestrictedStockUnitsMember">Restricted Stock and RSU [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RestrictedStockAndRestrictedStockUnitsMember" xlink:to="tlfa_RestrictedStockAndRestrictedStockUnitsMember" xlink:title="label: RestrictedStockAndRestrictedStockUnitsMember to tlfa_RestrictedStockAndRestrictedStockUnitsMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl" xml:lang="en-US" id="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl">The number of grants pending approval 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).</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:to="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval to tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl1" xml:lang="en-US" id="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl1">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants Pending Approval</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:to="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl1" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval to tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xml:lang="en-US" id="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval">Grants pending approval (in shares)</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:to="tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:title="label: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval to tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:label="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="ServicedBasedRestrictedStockUnitsRSUsMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl" xml:lang="en-US" id="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl">Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:to="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl" xlink:title="label: ServicedBasedRestrictedStockUnitsRSUsMember to tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl1" xml:lang="en-US" id="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl1">Serviced Based Restricted Stock Units (RSUs) [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:to="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl1" xlink:title="label: ServicedBasedRestrictedStockUnitsRSUsMember to tlfa_ServicedBasedRestrictedStockUnitsRSUsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xml:lang="en-US" id="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember">Service-Based Restricted Stock Units [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:to="tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="label: ServicedBasedRestrictedStockUnitsRSUsMember to tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:label="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:title="TwoThousandAndTwentyThreeRestrictedStockPlanMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl" xml:lang="en-US" id="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl">Refers to 2023 Restricted stock plan.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:to="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl" xlink:title="label: TwoThousandAndTwentyThreeRestrictedStockPlanMember to tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl1" xml:lang="en-US" id="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl1">Two Thousand and Twenty Three Restricted Stock Plan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:to="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl1" xlink:title="label: TwoThousandAndTwentyThreeRestrictedStockPlanMember to tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" xml:lang="en-US" id="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember">2023 Restricted Stock Plan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:to="tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:title="label: TwoThousandAndTwentyThreeRestrictedStockPlanMember to tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" xlink:label="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:title="TwoThousandAndThirteenRestrictedStockPlanMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl" xml:lang="en-US" id="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl">Refers to 2013 Restricted stock plan.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:to="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl" xlink:title="label: TwoThousandAndThirteenRestrictedStockPlanMember to tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl1" xml:lang="en-US" id="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl1">Two Thousand and Thirteen Restricted Stock Plan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:to="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl1" xlink:title="label: TwoThousandAndThirteenRestrictedStockPlanMember to tlfa_TwoThousandAndThirteenRestrictedStockPlanMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" xml:lang="en-US" id="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember">2013 Restricted Stock Plan [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:to="tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" xlink:title="label: TwoThousandAndThirteenRestrictedStockPlanMember to tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NonEmployeeDirectorMember" xlink:label="NonEmployeeDirectorMember" xlink:title="NonEmployeeDirectorMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_NonEmployeeDirectorMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_NonEmployeeDirectorMember_lbl" xml:lang="en-US" id="tlfa_NonEmployeeDirectorMember_lbl">Person with designation of non-employee director.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonEmployeeDirectorMember" xlink:to="tlfa_NonEmployeeDirectorMember_lbl" xlink:title="label: NonEmployeeDirectorMember to tlfa_NonEmployeeDirectorMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_NonEmployeeDirectorMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_NonEmployeeDirectorMember_lbl1" xml:lang="en-US" id="tlfa_NonEmployeeDirectorMember_lbl1">Non-Employee Director [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonEmployeeDirectorMember" xlink:to="tlfa_NonEmployeeDirectorMember_lbl1" xlink:title="label: NonEmployeeDirectorMember to tlfa_NonEmployeeDirectorMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_NonEmployeeDirectorMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_NonEmployeeDirectorMember" xml:lang="en-US" id="tlfa_NonEmployeeDirectorMember">Non-Employee Directors [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NonEmployeeDirectorMember" xlink:to="tlfa_NonEmployeeDirectorMember" xlink:title="label: NonEmployeeDirectorMember to tlfa_NonEmployeeDirectorMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_RevenueRecognitionDiscountsPolicyTextBlock" xlink:label="RevenueRecognitionDiscountsPolicyTextBlock" xlink:title="RevenueRecognitionDiscountsPolicyTextBlock" />
    <link:label xlink:type="resource" xlink:label="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl" xml:lang="en-US" id="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl">Disclosure of accounting policy for sales discounts.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRecognitionDiscountsPolicyTextBlock" xlink:to="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl" xlink:title="label: RevenueRecognitionDiscountsPolicyTextBlock to tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl1" xml:lang="en-US" id="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl1">Revenue Recognition, Discounts [Policy Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRecognitionDiscountsPolicyTextBlock" xlink:to="tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl1" xlink:title="label: RevenueRecognitionDiscountsPolicyTextBlock to tlfa_RevenueRecognitionDiscountsPolicyTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_RevenueRecognitionDiscountsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_RevenueRecognitionDiscountsPolicyTextBlock" xml:lang="en-US" id="tlfa_RevenueRecognitionDiscountsPolicyTextBlock">Discounts</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="RevenueRecognitionDiscountsPolicyTextBlock" xlink:to="tlfa_RevenueRecognitionDiscountsPolicyTextBlock" xlink:title="label: RevenueRecognitionDiscountsPolicyTextBlock to tlfa_RevenueRecognitionDiscountsPolicyTextBlock" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_DiscountsAbstract" xlink:label="DiscountsAbstract" xlink:title="DiscountsAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_DiscountsAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_DiscountsAbstract_lbl1" xml:lang="en-US" id="tlfa_DiscountsAbstract_lbl1">Discounts [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DiscountsAbstract" xlink:to="tlfa_DiscountsAbstract_lbl1" xlink:title="label: DiscountsAbstract to tlfa_DiscountsAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_DiscountsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_DiscountsAbstract" xml:lang="en-US" id="tlfa_DiscountsAbstract">Discounts [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="DiscountsAbstract" xlink:to="tlfa_DiscountsAbstract" xlink:title="label: DiscountsAbstract to tlfa_DiscountsAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NumberOfClassesOfCustomerDiscounts" xlink:label="NumberOfClassesOfCustomerDiscounts" xlink:title="NumberOfClassesOfCustomerDiscounts" />
    <link:label xlink:type="resource" xlink:label="tlfa_NumberOfClassesOfCustomerDiscounts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_NumberOfClassesOfCustomerDiscounts_lbl" xml:lang="en-US" id="tlfa_NumberOfClassesOfCustomerDiscounts_lbl">Number of classes of customer discounts.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfClassesOfCustomerDiscounts" xlink:to="tlfa_NumberOfClassesOfCustomerDiscounts_lbl" xlink:title="label: NumberOfClassesOfCustomerDiscounts to tlfa_NumberOfClassesOfCustomerDiscounts_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_NumberOfClassesOfCustomerDiscounts_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_NumberOfClassesOfCustomerDiscounts_lbl1" xml:lang="en-US" id="tlfa_NumberOfClassesOfCustomerDiscounts_lbl1">Number of Classes of Customer Discounts</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfClassesOfCustomerDiscounts" xlink:to="tlfa_NumberOfClassesOfCustomerDiscounts_lbl1" xlink:title="label: NumberOfClassesOfCustomerDiscounts to tlfa_NumberOfClassesOfCustomerDiscounts_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_NumberOfClassesOfCustomerDiscounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_NumberOfClassesOfCustomerDiscounts" xml:lang="en-US" id="tlfa_NumberOfClassesOfCustomerDiscounts">Number of classes of customer discounts</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfClassesOfCustomerDiscounts" xlink:to="tlfa_NumberOfClassesOfCustomerDiscounts" xlink:title="label: NumberOfClassesOfCustomerDiscounts to tlfa_NumberOfClassesOfCustomerDiscounts" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_GiftCardRedemptionPeriod" xlink:label="GiftCardRedemptionPeriod" xlink:title="GiftCardRedemptionPeriod" />
    <link:label xlink:type="resource" xlink:label="tlfa_GiftCardRedemptionPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_GiftCardRedemptionPeriod_lbl" xml:lang="en-US" id="tlfa_GiftCardRedemptionPeriod_lbl">Expected customer gift card redemption period, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GiftCardRedemptionPeriod" xlink:to="tlfa_GiftCardRedemptionPeriod_lbl" xlink:title="label: GiftCardRedemptionPeriod to tlfa_GiftCardRedemptionPeriod_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_GiftCardRedemptionPeriod_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_GiftCardRedemptionPeriod_lbl1" xml:lang="en-US" id="tlfa_GiftCardRedemptionPeriod_lbl1">Gift Card Redemption Period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GiftCardRedemptionPeriod" xlink:to="tlfa_GiftCardRedemptionPeriod_lbl1" xlink:title="label: GiftCardRedemptionPeriod to tlfa_GiftCardRedemptionPeriod_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_GiftCardRedemptionPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_GiftCardRedemptionPeriod" xml:lang="en-US" id="tlfa_GiftCardRedemptionPeriod">Gift card redemption period</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="GiftCardRedemptionPeriod" xlink:to="tlfa_GiftCardRedemptionPeriod" xlink:title="label: GiftCardRedemptionPeriod to tlfa_GiftCardRedemptionPeriod" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_InventoryMerchandiseExpectedToBeReturned" xlink:label="InventoryMerchandiseExpectedToBeReturned" xlink:title="InventoryMerchandiseExpectedToBeReturned" />
    <link:label xlink:type="resource" xlink:label="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl" xml:lang="en-US" id="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl">Gross amount of merchandise or supplies to which the entity expected returns as of balance sheet date.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryMerchandiseExpectedToBeReturned" xlink:to="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl" xlink:title="label: InventoryMerchandiseExpectedToBeReturned to tlfa_InventoryMerchandiseExpectedToBeReturned_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl1" xml:lang="en-US" id="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl1">Inventory, Merchandise Expected to be Returned</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryMerchandiseExpectedToBeReturned" xlink:to="tlfa_InventoryMerchandiseExpectedToBeReturned_lbl1" xlink:title="label: InventoryMerchandiseExpectedToBeReturned to tlfa_InventoryMerchandiseExpectedToBeReturned_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_InventoryMerchandiseExpectedToBeReturned" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="tlfa_InventoryMerchandiseExpectedToBeReturned" xml:lang="en-US" id="tlfa_InventoryMerchandiseExpectedToBeReturned">Estimate of merchandise expected to be returned</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="InventoryMerchandiseExpectedToBeReturned" xlink:to="tlfa_InventoryMerchandiseExpectedToBeReturned" xlink:title="label: InventoryMerchandiseExpectedToBeReturned to tlfa_InventoryMerchandiseExpectedToBeReturned" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AllOtherCountriesMember" xlink:label="AllOtherCountriesMember" xlink:title="AllOtherCountriesMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_AllOtherCountriesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_AllOtherCountriesMember_lbl" xml:lang="en-US" id="tlfa_AllOtherCountriesMember_lbl">All other countries excluding the United States and Canada.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllOtherCountriesMember" xlink:to="tlfa_AllOtherCountriesMember_lbl" xlink:title="label: AllOtherCountriesMember to tlfa_AllOtherCountriesMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_AllOtherCountriesMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_AllOtherCountriesMember_lbl1" xml:lang="en-US" id="tlfa_AllOtherCountriesMember_lbl1">All Other Countries [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AllOtherCountriesMember" xlink:to="tlfa_AllOtherCountriesMember_lbl1" xlink:title="label: AllOtherCountriesMember to tlfa_AllOtherCountriesMember_lbl1" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_OtherCountriesMember" xlink:label="OtherCountriesMember" xlink:title="OtherCountriesMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_OtherCountriesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_OtherCountriesMember_lbl" xml:lang="en-US" id="tlfa_OtherCountriesMember_lbl">All other countries excluding the United States and Canada.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCountriesMember" xlink:to="tlfa_OtherCountriesMember_lbl" xlink:title="label: OtherCountriesMember to tlfa_OtherCountriesMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_OtherCountriesMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_OtherCountriesMember_lbl1" xml:lang="en-US" id="tlfa_OtherCountriesMember_lbl1">Other Countries [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCountriesMember" xlink:to="tlfa_OtherCountriesMember_lbl1" xlink:title="label: OtherCountriesMember to tlfa_OtherCountriesMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_OtherCountriesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_OtherCountriesMember" xml:lang="en-US" id="tlfa_OtherCountriesMember">Other [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="OtherCountriesMember" xlink:to="tlfa_OtherCountriesMember" xlink:title="label: OtherCountriesMember to tlfa_OtherCountriesMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:label="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:title="AccruedLiabilitiesAndOtherLiabilitiesMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl" xml:lang="en-US" id="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl">Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:to="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl" xlink:title="label: AccruedLiabilitiesAndOtherLiabilitiesMember to tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl1" xml:lang="en-US" id="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl1">Accrued Liabilities and Other Liabilities [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:to="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl1" xlink:title="label: AccruedLiabilitiesAndOtherLiabilitiesMember to tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" xml:lang="en-US" id="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember">Accrued Expenses and Other Liabilities [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:to="tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:title="label: AccruedLiabilitiesAndOtherLiabilitiesMember to tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NumberOfStoresTemporarilyClosed" xlink:label="NumberOfStoresTemporarilyClosed" xlink:title="NumberOfStoresTemporarilyClosed" />
    <link:label xlink:type="resource" xlink:label="tlfa_NumberOfStoresTemporarilyClosed_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_NumberOfStoresTemporarilyClosed_lbl" xml:lang="en-US" id="tlfa_NumberOfStoresTemporarilyClosed_lbl">The number of stores closed on temporary basis.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfStoresTemporarilyClosed" xlink:to="tlfa_NumberOfStoresTemporarilyClosed_lbl" xlink:title="label: NumberOfStoresTemporarilyClosed to tlfa_NumberOfStoresTemporarilyClosed_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_NumberOfStoresTemporarilyClosed_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_NumberOfStoresTemporarilyClosed_lbl1" xml:lang="en-US" id="tlfa_NumberOfStoresTemporarilyClosed_lbl1">Number of Stores Temporarily Closed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfStoresTemporarilyClosed" xlink:to="tlfa_NumberOfStoresTemporarilyClosed_lbl1" xlink:title="label: NumberOfStoresTemporarilyClosed to tlfa_NumberOfStoresTemporarilyClosed_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_NumberOfStoresTemporarilyClosed" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_NumberOfStoresTemporarilyClosed" xml:lang="en-US" id="tlfa_NumberOfStoresTemporarilyClosed">Number of stores temporarily closed</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="NumberOfStoresTemporarilyClosed" xlink:to="tlfa_NumberOfStoresTemporarilyClosed" xlink:title="label: NumberOfStoresTemporarilyClosed to tlfa_NumberOfStoresTemporarilyClosed" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_BusinessDescriptionAbstract" xlink:label="BusinessDescriptionAbstract" xlink:title="BusinessDescriptionAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_BusinessDescriptionAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_BusinessDescriptionAbstract_lbl1" xml:lang="en-US" id="tlfa_BusinessDescriptionAbstract_lbl1">Business Description [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BusinessDescriptionAbstract" xlink:to="tlfa_BusinessDescriptionAbstract_lbl1" xlink:title="label: BusinessDescriptionAbstract to tlfa_BusinessDescriptionAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_BusinessDescriptionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_BusinessDescriptionAbstract" xml:lang="en-US" id="tlfa_BusinessDescriptionAbstract">Description of Business [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="BusinessDescriptionAbstract" xlink:to="tlfa_BusinessDescriptionAbstract" xlink:title="label: BusinessDescriptionAbstract to tlfa_BusinessDescriptionAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl">Unrecognized cost of unvested share-based compensation awards in excess of one year due in the third fiscal year following the latest fiscal year.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl1" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl1">Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Three Years</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears">2027</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl">Unrecognized cost of unvested share-based compensation awards due in excess of one year due in the second fiscal year following the latest fiscal year.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl1" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl1">Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Two Years</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears">2026</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl">Unrecognized cost of unvested share-based compensation awards in excess of one year due in the next fiscal year following the latest fiscal year.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths to tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl1" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl1">Employee Service Share-based Compensation Nonvested Awards Compensation Cost Not Yet Recognized Due In Next Twelve Months</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths to tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths">2025</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="label: EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths to tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:label="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:title="PerformanceBasedRestrictedStockUnitsRSUsMember" />
    <link:label xlink:type="resource" xlink:label="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl" xml:lang="en-US" id="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl">Share instrument which is convertible to stock or an equivalent amount of cash, when specified performance conditions are met.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:to="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl" xlink:title="label: PerformanceBasedRestrictedStockUnitsRSUsMember to tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl1" xml:lang="en-US" id="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl1">Performance Based Restricted Stock Units (RSUs) [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:to="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl1" xlink:title="label: PerformanceBasedRestrictedStockUnitsRSUsMember to tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" xml:lang="en-US" id="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember">Performance-Based Restricted Stock Units [Member]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:to="tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:title="label: PerformanceBasedRestrictedStockUnitsRSUsMember to tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl">Unrecognized cost of unvested share-based compensation awards in excess of one year due in the fourth fiscal year following the latest fiscal year.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl1" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl1">Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Four Years</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl1" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:title="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xml:lang="en-US" id="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears">2028</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:to="tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="label: EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears to tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:label="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:title="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract_lbl1" xml:lang="en-US" id="tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract_lbl1">SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:to="tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract_lbl1" xlink:title="label: SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract to tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract_lbl1" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:label="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:title="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" />
    <link:label xlink:type="resource" xlink:label="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl" xml:lang="en-US" id="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl">The entire disclosure for sales of corporate headquarters and new CEO employment.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:to="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl" xlink:title="label: SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock to tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl1" xml:lang="en-US" id="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl1">Sales of Corporate Headquarters and New CEO Employment [Text Block]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:to="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl1" xlink:title="label: SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock to tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xml:lang="en-US" id="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock">SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:to="tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:title="label: SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock to tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SalesAndDisposalOfHeadquarterAbstract" xlink:label="SalesAndDisposalOfHeadquarterAbstract" xlink:title="SalesAndDisposalOfHeadquarterAbstract" />
    <link:label xlink:type="resource" xlink:label="tlfa_SalesAndDisposalOfHeadquarterAbstract_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_SalesAndDisposalOfHeadquarterAbstract_lbl1" xml:lang="en-US" id="tlfa_SalesAndDisposalOfHeadquarterAbstract_lbl1">Sales and Disposal of Headquarter [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesAndDisposalOfHeadquarterAbstract" xlink:to="tlfa_SalesAndDisposalOfHeadquarterAbstract_lbl1" xlink:title="label: SalesAndDisposalOfHeadquarterAbstract to tlfa_SalesAndDisposalOfHeadquarterAbstract_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_SalesAndDisposalOfHeadquarterAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_SalesAndDisposalOfHeadquarterAbstract" xml:lang="en-US" id="tlfa_SalesAndDisposalOfHeadquarterAbstract">Sales and Disposal of Headquarter [Abstract]</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="SalesAndDisposalOfHeadquarterAbstract" xlink:to="tlfa_SalesAndDisposalOfHeadquarterAbstract" xlink:title="label: SalesAndDisposalOfHeadquarterAbstract to tlfa_SalesAndDisposalOfHeadquarterAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_HeadquarterAssetsNetBookValue" xlink:label="HeadquarterAssetsNetBookValue" xlink:title="HeadquarterAssetsNetBookValue" />
    <link:label xlink:type="resource" xlink:label="tlfa_HeadquarterAssetsNetBookValue_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:title="tlfa_HeadquarterAssetsNetBookValue_lbl" xml:lang="en-US" id="tlfa_HeadquarterAssetsNetBookValue_lbl">The net book value of the asset(s) sold in connection with the sale of the headquarter assets.</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HeadquarterAssetsNetBookValue" xlink:to="tlfa_HeadquarterAssetsNetBookValue_lbl" xlink:title="label: HeadquarterAssetsNetBookValue to tlfa_HeadquarterAssetsNetBookValue_lbl" />
    <link:label xlink:type="resource" xlink:label="tlfa_HeadquarterAssetsNetBookValue_lbl1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:title="tlfa_HeadquarterAssetsNetBookValue_lbl1" xml:lang="en-US" id="tlfa_HeadquarterAssetsNetBookValue_lbl1">Headquarter Assets, Net Book Value</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HeadquarterAssetsNetBookValue" xlink:to="tlfa_HeadquarterAssetsNetBookValue_lbl1" xlink:title="label: HeadquarterAssetsNetBookValue to tlfa_HeadquarterAssetsNetBookValue_lbl1" />
    <link:label xlink:type="resource" xlink:label="tlfa_HeadquarterAssetsNetBookValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:title="tlfa_HeadquarterAssetsNetBookValue" xml:lang="en-US" id="tlfa_HeadquarterAssetsNetBookValue">NBV of Headquarter Assets</link:label>
    <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="HeadquarterAssetsNetBookValue" xlink:to="tlfa_HeadquarterAssetsNetBookValue" xlink:title="label: HeadquarterAssetsNetBookValue to tlfa_HeadquarterAssetsNetBookValue" />
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>tlfa-20250331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="us-ascii"?>
<!--Generated by Broadridge PROfile 25.3.2.5298 Broadridge-->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" />
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" />
  <link:roleRef roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#SalesOfCorporateHeadquartersNewCeoEmploymentDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ShareRepurchaseProgramAndShareRepurchasesDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/EarningsPerShareDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShareDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensation2013And2023RestrictedStockPlansDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/IncomeTaxDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#IncomeTaxDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#NotesPayableAndLongtermDebtDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails" />
  <link:roleRef roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#SalesOfCorporateHeadquartersNewCeoEmploymentTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/EarningsPerShareTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShareTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensationTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensationTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesTables" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies" />
  <link:roleRef roleURI="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment" xlink:type="simple" xlink:href="tlfa-20250331.xsd#SalesOfCorporateHeadquartersNewCeoEmployment" />
  <link:roleRef roleURI="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ShareRepurchaseProgramAndShareRepurchases" />
  <link:roleRef roleURI="http://tandyleather.com/role/CommitmentsAndContingencies" xlink:type="simple" xlink:href="tlfa-20250331.xsd#CommitmentsAndContingencies" />
  <link:roleRef roleURI="http://tandyleather.com/role/EarningsPerShare" xlink:type="simple" xlink:href="tlfa-20250331.xsd#EarningsPerShare" />
  <link:roleRef roleURI="http://tandyleather.com/role/StockbasedCompensation" xlink:type="simple" xlink:href="tlfa-20250331.xsd#StockbasedCompensation" />
  <link:roleRef roleURI="http://tandyleather.com/role/IncomeTax" xlink:type="simple" xlink:href="tlfa-20250331.xsd#IncomeTax" />
  <link:roleRef roleURI="http://tandyleather.com/role/NotesPayableAndLongtermDebt" xlink:type="simple" xlink:href="tlfa-20250331.xsd#NotesPayableAndLongtermDebt" />
  <link:roleRef roleURI="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies" xlink:type="simple" xlink:href="tlfa-20250331.xsd#BasisOfPresentationAndCertainSignificantAccountingPolicies" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfStockholdersEquity" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfCashFlows" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedStatementsOfOperationsAndComprehensiveIncome" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedBalanceSheetsParenthetical" />
  <link:roleRef roleURI="http://tandyleather.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tlfa-20250331.xsd#ConsolidatedBalanceSheets" />
  <link:roleRef roleURI="http://tandyleather.com/role/DocumentAndEntityInformation" xlink:type="simple" xlink:href="tlfa-20250331.xsd#DocumentAndEntityInformation" />
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/DocumentAndEntityInformation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="CoverAbstract" xlink:title="CoverAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="DocumentType" xlink:title="DocumentType" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentType" xlink:title="presentation: CoverAbstract to DocumentType" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="AmendmentFlag" xlink:title="AmendmentFlag" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="AmendmentFlag" xlink:title="presentation: CoverAbstract to AmendmentFlag" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="DocumentQuarterlyReport" xlink:title="DocumentQuarterlyReport" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentQuarterlyReport" xlink:title="presentation: CoverAbstract to DocumentQuarterlyReport" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="DocumentPeriodEndDate" xlink:title="DocumentPeriodEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentPeriodEndDate" xlink:title="presentation: CoverAbstract to DocumentPeriodEndDate" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="CurrentFiscalYearEndDate" xlink:title="CurrentFiscalYearEndDate" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CurrentFiscalYearEndDate" xlink:title="presentation: CoverAbstract to CurrentFiscalYearEndDate" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="DocumentFiscalYearFocus" xlink:title="DocumentFiscalYearFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalYearFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalYearFocus" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="DocumentFiscalPeriodFocus" xlink:title="DocumentFiscalPeriodFocus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentFiscalPeriodFocus" xlink:title="presentation: CoverAbstract to DocumentFiscalPeriodFocus" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="DocumentTransitionReport" xlink:title="DocumentTransitionReport" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="DocumentTransitionReport" xlink:title="presentation: CoverAbstract to DocumentTransitionReport" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="EntityFileNumber" xlink:title="EntityFileNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFileNumber" xlink:title="presentation: CoverAbstract to EntityFileNumber" order="8.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="EntityRegistrantName" xlink:title="EntityRegistrantName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityRegistrantName" xlink:title="presentation: CoverAbstract to EntityRegistrantName" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="EntityCentralIndexKey" xlink:title="EntityCentralIndexKey" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCentralIndexKey" xlink:title="presentation: CoverAbstract to EntityCentralIndexKey" order="10.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="EntityIncorporationStateCountryCode" xlink:title="EntityIncorporationStateCountryCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityIncorporationStateCountryCode" xlink:title="presentation: CoverAbstract to EntityIncorporationStateCountryCode" order="11.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="EntityTaxIdentificationNumber" xlink:title="EntityTaxIdentificationNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityTaxIdentificationNumber" xlink:title="presentation: CoverAbstract to EntityTaxIdentificationNumber" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="EntityAddressAddressLine1" xlink:title="EntityAddressAddressLine1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressAddressLine1" xlink:title="presentation: CoverAbstract to EntityAddressAddressLine1" order="13.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="EntityAddressCityOrTown" xlink:title="EntityAddressCityOrTown" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressCityOrTown" xlink:title="presentation: CoverAbstract to EntityAddressCityOrTown" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="EntityAddressStateOrProvince" xlink:title="EntityAddressStateOrProvince" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressStateOrProvince" xlink:title="presentation: CoverAbstract to EntityAddressStateOrProvince" order="15.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="EntityAddressPostalZipCode" xlink:title="EntityAddressPostalZipCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityAddressPostalZipCode" xlink:title="presentation: CoverAbstract to EntityAddressPostalZipCode" order="16.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="CityAreaCode" xlink:title="CityAreaCode" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="CityAreaCode" xlink:title="presentation: CoverAbstract to CityAreaCode" order="17.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="LocalPhoneNumber" xlink:title="LocalPhoneNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="LocalPhoneNumber" xlink:title="presentation: CoverAbstract to LocalPhoneNumber" order="18.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="Security12bTitle" xlink:title="Security12bTitle" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="Security12bTitle" xlink:title="presentation: CoverAbstract to Security12bTitle" order="19.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="TradingSymbol" xlink:title="TradingSymbol" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="TradingSymbol" xlink:title="presentation: CoverAbstract to TradingSymbol" order="20.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="SecurityExchangeName" xlink:title="SecurityExchangeName" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="SecurityExchangeName" xlink:title="presentation: CoverAbstract to SecurityExchangeName" order="21.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="EntityCurrentReportingStatus" xlink:title="EntityCurrentReportingStatus" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCurrentReportingStatus" xlink:title="presentation: CoverAbstract to EntityCurrentReportingStatus" order="22.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="EntityInteractiveDataCurrent" xlink:title="EntityInteractiveDataCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityInteractiveDataCurrent" xlink:title="presentation: CoverAbstract to EntityInteractiveDataCurrent" order="23.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="EntityFilerCategory" xlink:title="EntityFilerCategory" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityFilerCategory" xlink:title="presentation: CoverAbstract to EntityFilerCategory" order="24.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="EntitySmallBusiness" xlink:title="EntitySmallBusiness" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntitySmallBusiness" xlink:title="presentation: CoverAbstract to EntitySmallBusiness" order="25.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="EntityEmergingGrowthCompany" xlink:title="EntityEmergingGrowthCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityEmergingGrowthCompany" xlink:title="presentation: CoverAbstract to EntityEmergingGrowthCompany" order="26.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="EntityShellCompany" xlink:title="EntityShellCompany" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityShellCompany" xlink:title="presentation: CoverAbstract to EntityShellCompany" order="27.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="EntityCommonStockSharesOutstanding" xlink:title="EntityCommonStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CoverAbstract" xlink:to="EntityCommonStockSharesOutstanding" xlink:title="presentation: CoverAbstract to EntityCommonStockSharesOutstanding" order="28.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedBalanceSheets">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="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="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="CashAndCashEquivalentsAtCarryingValue" xlink:title="CashAndCashEquivalentsAtCarryingValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="CashAndCashEquivalentsAtCarryingValue" xlink:title="presentation: AssetsCurrentAbstract to CashAndCashEquivalentsAtCarryingValue" order="0.0" 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_AccountsReceivableNetCurrent" xlink:label="AccountsReceivableNetCurrent" xlink:title="AccountsReceivableNetCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AccountsReceivableNetCurrent" xlink:title="presentation: AssetsCurrentAbstract to AccountsReceivableNetCurrent" order="1.0" 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_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="InventoryNet" xlink:title="presentation: AssetsCurrentAbstract to InventoryNet" order="2.0" 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_IncomeTaxesReceivable" xlink:label="IncomeTaxesReceivable" xlink:title="IncomeTaxesReceivable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="IncomeTaxesReceivable" xlink:title="presentation: AssetsCurrentAbstract to IncomeTaxesReceivable" order="3.0" 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_PrepaidExpenseCurrent" xlink:label="PrepaidExpenseCurrent" xlink:title="PrepaidExpenseCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="PrepaidExpenseCurrent" xlink:title="presentation: AssetsCurrentAbstract to PrepaidExpenseCurrent" order="4.0" 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_OtherAssetsCurrent" xlink:label="OtherAssetsCurrent" xlink:title="OtherAssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="OtherAssetsCurrent" xlink:title="presentation: AssetsCurrentAbstract to OtherAssetsCurrent" order="5.0" 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_AssetsCurrent" xlink:label="AssetsCurrent" xlink:title="AssetsCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AssetsCurrent" xlink:title="presentation: AssetsCurrentAbstract to AssetsCurrent" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AssetsCurrentAbstract" xlink:title="presentation: AssetsAbstract to AssetsCurrentAbstract" order="0.0" 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_PropertyPlantAndEquipmentGross" xlink:label="PropertyPlantAndEquipmentGross" xlink:title="PropertyPlantAndEquipmentGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="PropertyPlantAndEquipmentGross" xlink:title="presentation: AssetsAbstract to PropertyPlantAndEquipmentGross" order="1.0" 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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:label="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:title="presentation: AssetsAbstract to AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="PropertyPlantAndEquipmentNet" xlink:title="PropertyPlantAndEquipmentNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="PropertyPlantAndEquipmentNet" xlink:title="presentation: AssetsAbstract to PropertyPlantAndEquipmentNet" order="3.0" 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_OperatingLeaseRightOfUseAsset" xlink:label="OperatingLeaseRightOfUseAsset" xlink:title="OperatingLeaseRightOfUseAsset" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="OperatingLeaseRightOfUseAsset" xlink:title="presentation: AssetsAbstract to OperatingLeaseRightOfUseAsset" order="4.0" 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_DeferredIncomeTaxAssetsNet" xlink:label="DeferredIncomeTaxAssetsNet" xlink:title="DeferredIncomeTaxAssetsNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="DeferredIncomeTaxAssetsNet" xlink:title="presentation: AssetsAbstract to DeferredIncomeTaxAssetsNet" order="5.0" 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_OtherAssetsNoncurrent" xlink:label="OtherAssetsNoncurrent" xlink:title="OtherAssetsNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="OtherAssetsNoncurrent" xlink:title="presentation: AssetsAbstract to OtherAssetsNoncurrent" order="6.0" 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_Assets" xlink:label="Assets" xlink:title="Assets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="Assets" xlink:title="presentation: AssetsAbstract to Assets" order="7.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="AssetsAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to AssetsAbstract" order="0.0" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="LiabilitiesCurrentAbstract" xlink:title="LiabilitiesCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableTradeCurrent" xlink:label="AccountsPayableTradeCurrent" xlink:title="AccountsPayableTradeCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccountsPayableTradeCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to AccountsPayableTradeCurrent" order="0.0" 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_AccruedLiabilitiesAndOtherLiabilities" xlink:label="AccruedLiabilitiesAndOtherLiabilities" xlink:title="AccruedLiabilitiesAndOtherLiabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="AccruedLiabilitiesAndOtherLiabilities" xlink:title="presentation: LiabilitiesCurrentAbstract to AccruedLiabilitiesAndOtherLiabilities" order="1.0" 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_TaxesPayableCurrent" xlink:label="TaxesPayableCurrent" xlink:title="TaxesPayableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="TaxesPayableCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to TaxesPayableCurrent" order="2.0" 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_OperatingLeaseLiabilityCurrent" xlink:label="OperatingLeaseLiabilityCurrent" xlink:title="OperatingLeaseLiabilityCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="OperatingLeaseLiabilityCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to OperatingLeaseLiabilityCurrent" order="3.0" 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_LiabilitiesCurrent" xlink:label="LiabilitiesCurrent" xlink:title="LiabilitiesCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesCurrentAbstract" xlink:to="LiabilitiesCurrent" xlink:title="presentation: LiabilitiesCurrentAbstract to LiabilitiesCurrent" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesCurrentAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesCurrentAbstract" order="0.0" 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_LiabilityForUncertainTaxPositionsNoncurrent" xlink:label="LiabilityForUncertainTaxPositionsNoncurrent" xlink:title="LiabilityForUncertainTaxPositionsNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilityForUncertainTaxPositionsNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilityForUncertainTaxPositionsNoncurrent" order="1.0" 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_OtherLiabilitiesNoncurrent" xlink:label="OtherLiabilitiesNoncurrent" xlink:title="OtherLiabilitiesNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="OtherLiabilitiesNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to OtherLiabilitiesNoncurrent" order="2.0" 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_OperatingLeaseLiabilityNoncurrent" xlink:label="OperatingLeaseLiabilityNoncurrent" xlink:title="OperatingLeaseLiabilityNoncurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="OperatingLeaseLiabilityNoncurrent" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to OperatingLeaseLiabilityNoncurrent" order="3.0" 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_CommitmentsAndContingencies" xlink:label="CommitmentsAndContingencies" xlink:title="CommitmentsAndContingencies" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="CommitmentsAndContingencies" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to CommitmentsAndContingencies" order="4.0" 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_StockholdersEquityAbstract" xlink:label="StockholdersEquityAbstract" xlink:title="StockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="CommonStockValue" xlink:title="CommonStockValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockValue" xlink:title="presentation: StockholdersEquityAbstract to CommonStockValue" order="0.0" 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_AdditionalPaidInCapital" xlink:label="AdditionalPaidInCapital" xlink:title="AdditionalPaidInCapital" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="AdditionalPaidInCapital" xlink:title="presentation: StockholdersEquityAbstract to AdditionalPaidInCapital" order="1.0" 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_RetainedEarningsAccumulatedDeficit" xlink:label="RetainedEarningsAccumulatedDeficit" xlink:title="RetainedEarningsAccumulatedDeficit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="RetainedEarningsAccumulatedDeficit" xlink:title="presentation: StockholdersEquityAbstract to RetainedEarningsAccumulatedDeficit" order="2.0" 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_TreasuryStockCommonValue" xlink:label="TreasuryStockCommonValue" xlink:title="TreasuryStockCommonValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="TreasuryStockCommonValue" xlink:title="presentation: StockholdersEquityAbstract to TreasuryStockCommonValue" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:label="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="AccumulatedOtherComprehensiveIncomeLossNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:title="presentation: StockholdersEquityAbstract to AccumulatedOtherComprehensiveIncomeLossNetOfTax" order="4.0" 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_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="StockholdersEquity" xlink:title="presentation: StockholdersEquityAbstract to StockholdersEquity" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="StockholdersEquityAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to StockholdersEquityAbstract" order="5.0" 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_LiabilitiesAndStockholdersEquity" xlink:label="LiabilitiesAndStockholdersEquity" xlink:title="LiabilitiesAndStockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="LiabilitiesAndStockholdersEquity" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to LiabilitiesAndStockholdersEquity" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="LiabilitiesAndStockholdersEquityAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="StatementOfFinancialPositionAbstract" xlink:title="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="AssetsAbstract" xlink:title="AssetsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="AssetsCurrentAbstract" xlink:title="AssetsCurrentAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="AllowanceForDoubtfulAccountsReceivableCurrent" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsCurrentAbstract" xlink:to="AllowanceForDoubtfulAccountsReceivableCurrent" xlink:title="presentation: AssetsCurrentAbstract to AllowanceForDoubtfulAccountsReceivableCurrent" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AssetsAbstract" xlink:to="AssetsCurrentAbstract" xlink:title="presentation: AssetsAbstract to AssetsCurrentAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="AssetsAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to AssetsAbstract" order="0.0" 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_LiabilitiesAndStockholdersEquityAbstract" xlink:label="LiabilitiesAndStockholdersEquityAbstract" xlink:title="LiabilitiesAndStockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="StockholdersEquityAbstract" xlink:title="StockholdersEquityAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="CommonStockParOrStatedValuePerShare" xlink:title="CommonStockParOrStatedValuePerShare" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockParOrStatedValuePerShare" xlink:title="presentation: StockholdersEquityAbstract to CommonStockParOrStatedValuePerShare" order="0.0" 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_CommonStockSharesAuthorized" xlink:label="CommonStockSharesAuthorized" xlink:title="CommonStockSharesAuthorized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockSharesAuthorized" xlink:title="presentation: StockholdersEquityAbstract to CommonStockSharesAuthorized" order="1.0" 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_CommonStockSharesIssued" xlink:label="CommonStockSharesIssued" xlink:title="CommonStockSharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockSharesIssued" xlink:title="presentation: StockholdersEquityAbstract to CommonStockSharesIssued" order="2.0" 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_CommonStockSharesOutstanding" xlink:label="CommonStockSharesOutstanding" xlink:title="CommonStockSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="CommonStockSharesOutstanding" xlink:title="presentation: StockholdersEquityAbstract to CommonStockSharesOutstanding" order="3.0" 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_TreasuryStockCommonShares" xlink:label="TreasuryStockCommonShares" xlink:title="TreasuryStockCommonShares" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockholdersEquityAbstract" xlink:to="TreasuryStockCommonShares" xlink:title="presentation: StockholdersEquityAbstract to TreasuryStockCommonShares" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LiabilitiesAndStockholdersEquityAbstract" xlink:to="StockholdersEquityAbstract" xlink:title="presentation: LiabilitiesAndStockholdersEquityAbstract to StockholdersEquityAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfFinancialPositionAbstract" xlink:to="LiabilitiesAndStockholdersEquityAbstract" xlink:title="presentation: StatementOfFinancialPositionAbstract to LiabilitiesAndStockholdersEquityAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="IncomeStatementAbstract" xlink:title="IncomeStatementAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: IncomeStatementAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" 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_CostOfGoodsAndServicesSold" xlink:label="CostOfGoodsAndServicesSold" xlink:title="CostOfGoodsAndServicesSold" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="CostOfGoodsAndServicesSold" xlink:title="presentation: IncomeStatementAbstract to CostOfGoodsAndServicesSold" order="1.0" 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_GrossProfit" xlink:label="GrossProfit" xlink:title="GrossProfit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="GrossProfit" xlink:title="presentation: IncomeStatementAbstract to GrossProfit" order="2.0" 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_OperatingCostsAndExpenses" xlink:label="OperatingCostsAndExpenses" xlink:title="OperatingCostsAndExpenses" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingCostsAndExpenses" xlink:title="presentation: IncomeStatementAbstract to OperatingCostsAndExpenses" order="3.0" 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_OperatingIncomeLoss" xlink:label="OperatingIncomeLoss" xlink:title="OperatingIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingIncomeLoss" xlink:title="presentation: IncomeStatementAbstract to OperatingIncomeLoss" order="4.0" 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_OperatingIncomeLossAbstract" xlink:label="OperatingIncomeLossAbstract" xlink:title="OperatingIncomeLossAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="InterestIncomeExpenseNet" xlink:title="InterestIncomeExpenseNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingIncomeLossAbstract" xlink:to="InterestIncomeExpenseNet" xlink:title="presentation: OperatingIncomeLossAbstract to InterestIncomeExpenseNet" order="0.0" 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_GainLossOnDispositionOfAssets" xlink:label="GainLossOnDispositionOfAssets" xlink:title="GainLossOnDispositionOfAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingIncomeLossAbstract" xlink:to="GainLossOnDispositionOfAssets" xlink:title="presentation: OperatingIncomeLossAbstract to GainLossOnDispositionOfAssets" order="1.0" 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_OtherNonoperatingIncomeExpense" xlink:label="OtherNonoperatingIncomeExpense" xlink:title="OtherNonoperatingIncomeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingIncomeLossAbstract" xlink:to="OtherNonoperatingIncomeExpense" xlink:title="presentation: OperatingIncomeLossAbstract to OtherNonoperatingIncomeExpense" order="2.0" 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_NonoperatingIncomeExpense" xlink:label="NonoperatingIncomeExpense" xlink:title="NonoperatingIncomeExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="OperatingIncomeLossAbstract" xlink:to="NonoperatingIncomeExpense" xlink:title="presentation: OperatingIncomeLossAbstract to NonoperatingIncomeExpense" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OperatingIncomeLossAbstract" xlink:title="presentation: IncomeStatementAbstract to OperatingIncomeLossAbstract" order="5.0" 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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:title="presentation: IncomeStatementAbstract to IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="6.0" 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_IncomeTaxExpenseBenefit" xlink:label="IncomeTaxExpenseBenefit" xlink:title="IncomeTaxExpenseBenefit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="IncomeTaxExpenseBenefit" xlink:title="presentation: IncomeStatementAbstract to IncomeTaxExpenseBenefit" order="7.0" 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_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: IncomeStatementAbstract to NetIncomeLoss" order="8.0" 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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="presentation: IncomeStatementAbstract to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="9.0" 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_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:label="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" xlink:title="presentation: IncomeStatementAbstract to ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest" order="10.0" 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_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareBasic" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareBasic" order="0.0" 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_EarningsPerShareDiluted" xlink:label="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareDiluted" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareDiluted" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="EarningsPerShareAbstract" xlink:title="presentation: IncomeStatementAbstract to EarningsPerShareAbstract" order="11.0" 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_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" 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_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfDilutedSharesOutstanding" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeStatementAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="presentation: IncomeStatementAbstract to WeightedAverageNumberOfSharesOutstandingAbstract" order="12.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="StatementOfCashFlowsAbstract" xlink:title="StatementOfCashFlowsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to NetIncomeLoss" order="0.0" 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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSoldDepreciation" xlink:label="CostOfGoodsAndServicesSoldDepreciation" xlink:title="CostOfGoodsAndServicesSoldDepreciation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="CostOfGoodsAndServicesSoldDepreciation" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to CostOfGoodsAndServicesSoldDepreciation" order="0.0" 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_OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:label="OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:title="OperatingLeaseRightOfUseAssetAmortizationExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="OperatingLeaseRightOfUseAssetAmortizationExpense" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to OperatingLeaseRightOfUseAssetAmortizationExpense" order="1.0" 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_GainLossOnDispositionOfAssets" xlink:label="GainLossOnDispositionOfAssets" xlink:title="GainLossOnDispositionOfAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="GainLossOnDispositionOfAssets" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to GainLossOnDispositionOfAssets" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="ShareBasedCompensation" xlink:title="ShareBasedCompensation" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="ShareBasedCompensation" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to ShareBasedCompensation" order="3.0" 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_DeferredIncomeTaxesAndTaxCredits" xlink:label="DeferredIncomeTaxesAndTaxCredits" xlink:title="DeferredIncomeTaxesAndTaxCredits" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="DeferredIncomeTaxesAndTaxCredits" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to DeferredIncomeTaxesAndTaxCredits" order="4.0" 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_IncreaseDecreaseInOperatingCapitalAbstract" xlink:label="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="IncreaseDecreaseInOperatingCapitalAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="IncreaseDecreaseInAccountsReceivable" xlink:title="IncreaseDecreaseInAccountsReceivable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccountsReceivable" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccountsReceivable" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="IncreaseDecreaseInInventories" xlink:title="IncreaseDecreaseInInventories" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInInventories" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInInventories" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidExpense" xlink:label="IncreaseDecreaseInPrepaidExpense" xlink:title="IncreaseDecreaseInPrepaidExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInPrepaidExpense" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInPrepaidExpense" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherCurrentAssets" xlink:label="IncreaseDecreaseInOtherCurrentAssets" xlink:title="IncreaseDecreaseInOtherCurrentAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInOtherCurrentAssets" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInOtherCurrentAssets" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="IncreaseDecreaseInAccountsPayable" xlink:title="IncreaseDecreaseInAccountsPayable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccountsPayable" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccountsPayable" order="4.0" 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_IncreaseDecreaseInAccruedLiabilities" xlink:label="IncreaseDecreaseInAccruedLiabilities" xlink:title="IncreaseDecreaseInAccruedLiabilities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInAccruedLiabilities" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInAccruedLiabilities" order="5.0" 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_IncreaseDecreaseInDeferredIncomeTaxes" xlink:label="IncreaseDecreaseInDeferredIncomeTaxes" xlink:title="IncreaseDecreaseInDeferredIncomeTaxes" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInDeferredIncomeTaxes" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInDeferredIncomeTaxes" order="6.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentAssets" xlink:label="IncreaseDecreaseInOtherNoncurrentAssets" xlink:title="IncreaseDecreaseInOtherNoncurrentAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInOtherNoncurrentAssets" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInOtherNoncurrentAssets" order="7.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingLeaseLiability" xlink:label="IncreaseDecreaseInOperatingLeaseLiability" xlink:title="IncreaseDecreaseInOperatingLeaseLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="IncreaseDecreaseInOperatingLeaseLiability" xlink:title="presentation: IncreaseDecreaseInOperatingCapitalAbstract to IncreaseDecreaseInOperatingLeaseLiability" order="8.0" 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="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="IncreaseDecreaseInOperatingCapitalAbstract" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to IncreaseDecreaseInOperatingCapitalAbstract" order="5.0" 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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:label="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:title="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" xlink:title="presentation: AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract to AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1.0" 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_NetCashProvidedByUsedInOperatingActivities" xlink:label="NetCashProvidedByUsedInOperatingActivities" xlink:title="NetCashProvidedByUsedInOperatingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInOperatingActivities" xlink:title="presentation: NetCashProvidedByUsedInOperatingActivitiesAbstract to NetCashProvidedByUsedInOperatingActivities" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0.0" 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_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInInvestingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="PaymentsToAcquirePropertyPlantAndEquipment" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="PaymentsToAcquirePropertyPlantAndEquipment" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to PaymentsToAcquirePropertyPlantAndEquipment" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="ProceedsFromSaleOfProductiveAssets" xlink:title="ProceedsFromSaleOfProductiveAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="ProceedsFromSaleOfProductiveAssets" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to ProceedsFromSaleOfProductiveAssets" order="1.0" 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_NetCashProvidedByUsedInInvestingActivities" xlink:label="NetCashProvidedByUsedInInvestingActivities" xlink:title="NetCashProvidedByUsedInInvestingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInInvestingActivities" xlink:title="presentation: NetCashProvidedByUsedInInvestingActivitiesAbstract to NetCashProvidedByUsedInInvestingActivities" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInInvestingActivitiesAbstract" order="1.0" 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_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="NetCashProvidedByUsedInFinancingActivitiesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="FinanceLeasePrincipalPayments" xlink:title="FinanceLeasePrincipalPayments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="FinanceLeasePrincipalPayments" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to FinanceLeasePrincipalPayments" order="0.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsOfDividendsCommonStock" xlink:label="PaymentsOfDividendsCommonStock" xlink:title="PaymentsOfDividendsCommonStock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="PaymentsOfDividendsCommonStock" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to PaymentsOfDividendsCommonStock" order="1.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="NetCashProvidedByUsedInFinancingActivities" xlink:title="NetCashProvidedByUsedInFinancingActivities" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="NetCashProvidedByUsedInFinancingActivities" xlink:title="presentation: NetCashProvidedByUsedInFinancingActivitiesAbstract to NetCashProvidedByUsedInFinancingActivities" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:title="presentation: StatementOfCashFlowsAbstract to NetCashProvidedByUsedInFinancingActivitiesAbstract" order="2.0" 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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="presentation: StatementOfCashFlowsAbstract to EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="3.0" 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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" order="4.0" 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="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="5.0" 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="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2" xlink:title="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfCashFlowsAbstract" xlink:to="CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_2" xlink:title="presentation: StatementOfCashFlowsAbstract to CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="StatementOfStockholdersEquityAbstract" xlink:title="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="StatementTable" xlink:title="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="StatementEquityComponentsAxis" xlink:title="StatementEquityComponentsAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="CommonStockMember" xlink:title="CommonStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="CommonStockMember" xlink:title="presentation: StatementEquityComponentsAxis to CommonStockMember" order="0.0" 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_AdditionalPaidInCapitalMember" xlink:label="AdditionalPaidInCapitalMember" xlink:title="AdditionalPaidInCapitalMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="AdditionalPaidInCapitalMember" xlink:title="presentation: StatementEquityComponentsAxis to AdditionalPaidInCapitalMember" order="1.0" 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_TreasuryStockCommonMember" xlink:label="TreasuryStockCommonMember" xlink:title="TreasuryStockCommonMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="TreasuryStockCommonMember" xlink:title="presentation: StatementEquityComponentsAxis to TreasuryStockCommonMember" order="2.0" 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_RetainedEarningsMember" xlink:label="RetainedEarningsMember" xlink:title="RetainedEarningsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="RetainedEarningsMember" xlink:title="presentation: StatementEquityComponentsAxis to RetainedEarningsMember" order="3.0" 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_AccumulatedOtherComprehensiveIncomeMember" xlink:label="AccumulatedOtherComprehensiveIncomeMember" xlink:title="AccumulatedOtherComprehensiveIncomeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="AccumulatedOtherComprehensiveIncomeMember" xlink:title="presentation: StatementEquityComponentsAxis to AccumulatedOtherComprehensiveIncomeMember" order="4.0" 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_EquityComponentDomain" xlink:label="EquityComponentDomain" xlink:title="EquityComponentDomain" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementEquityComponentsAxis" xlink:to="EquityComponentDomain" xlink:title="presentation: StatementEquityComponentsAxis to EquityComponentDomain" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementTable" xlink:to="StatementEquityComponentsAxis" xlink:title="presentation: StatementTable to StatementEquityComponentsAxis" order="0.0" 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_StatementLineItems" xlink:label="StatementLineItems" xlink:title="StatementLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:label="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="IncreaseDecreaseInStockholdersEquityRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="StockholdersEquity" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockholdersEquity" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockholdersEquity" order="0.0" 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_SharesIssued" xlink:label="SharesIssued" xlink:title="SharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="SharesIssued" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to SharesIssued" order="1.0" 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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:label="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" order="2.0" 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_StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodValueRestrictedStockAwardGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockIssuedDuringPeriodValueRestrictedStockAwardGross" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockIssuedDuringPeriodValueRestrictedStockAwardGross" order="3.0" 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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockIssuedDuringPeriodSharesRestrictedStockAwardGross" order="4.0" 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_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="NetIncomeLoss" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to NetIncomeLoss" order="5.0" 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_DividendsCommonStockCash" xlink:label="DividendsCommonStockCash" xlink:title="DividendsCommonStockCash" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="DividendsCommonStockCash" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to DividendsCommonStockCash" order="6.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:label="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax" order="7.0" 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_StockholdersEquity" xlink:label="StockholdersEquity_2" xlink:title="StockholdersEquity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="StockholdersEquity_2" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to StockholdersEquity" order="8.0" 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_SharesIssued" xlink:label="SharesIssued_2" xlink:title="SharesIssued" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="SharesIssued_2" xlink:title="presentation: IncreaseDecreaseInStockholdersEquityRollForward to SharesIssued" order="9.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementLineItems" xlink:to="IncreaseDecreaseInStockholdersEquityRollForward" xlink:title="presentation: StatementLineItems to IncreaseDecreaseInStockholdersEquityRollForward" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementTable" xlink:to="StatementLineItems" xlink:title="presentation: StatementTable to StatementLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementOfStockholdersEquityAbstract" xlink:to="StatementTable" xlink:title="presentation: StatementOfStockholdersEquityAbstract to StatementTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:label="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to BasisOfPresentationAndSignificantAccountingPoliciesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/NotesPayableAndLongtermDebt">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="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="DebtDisclosureTextBlock" xlink:title="DebtDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtDisclosureTextBlock" xlink:title="presentation: DebtDisclosureAbstract to DebtDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/IncomeTax">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="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="IncomeTaxDisclosureTextBlock" xlink:title="IncomeTaxDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="IncomeTaxDisclosureTextBlock" xlink:title="presentation: IncomeTaxDisclosureAbstract to IncomeTaxDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensation">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShare">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="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="EarningsPerShareTextBlock" xlink:title="EarningsPerShareTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="EarningsPerShareTextBlock" xlink:title="presentation: EarningsPerShareAbstract to EarningsPerShareTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/CommitmentsAndContingencies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="CommitmentsAndContingenciesDisclosureAbstract" xlink:title="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="CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="CommitmentsAndContingenciesDisclosureTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="CommitmentsAndContingenciesDisclosureAbstract" xlink:to="CommitmentsAndContingenciesDisclosureTextBlock" xlink:title="presentation: CommitmentsAndContingenciesDisclosureAbstract to CommitmentsAndContingenciesDisclosureTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases">
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:label="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:title="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:label="ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:title="ShareRepurchaseProgramAndShareRepurchasesTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:to="ShareRepurchaseProgramAndShareRepurchasesTextBlock" xlink:title="presentation: SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract to ShareRepurchaseProgramAndShareRepurchasesTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment">
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:label="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:title="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:label="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:title="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:to="SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" xlink:title="presentation: SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract to SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock" xlink:label="CashAndCashEquivalentsPolicyTextBlock" xlink:title="CashAndCashEquivalentsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="CashAndCashEquivalentsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to CashAndCashEquivalentsPolicyTextBlock" order="0.0" 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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:label="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" order="1.0" 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_RevenueFromContractWithCustomerPolicyTextBlock" xlink:label="RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="RevenueFromContractWithCustomerPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="RevenueFromContractWithCustomerPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to RevenueFromContractWithCustomerPolicyTextBlock" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_RevenueRecognitionDiscountsPolicyTextBlock" xlink:label="RevenueRecognitionDiscountsPolicyTextBlock" xlink:title="RevenueRecognitionDiscountsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="RevenueRecognitionDiscountsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to RevenueRecognitionDiscountsPolicyTextBlock" order="3.0" 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_SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:label="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:title="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="SellingGeneralAndAdministrativeExpensesPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to SellingGeneralAndAdministrativeExpensesPolicyTextBlock" order="4.0" 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_PropertyPlantAndEquipmentPolicyTextBlock" xlink:label="PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="PropertyPlantAndEquipmentPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="PropertyPlantAndEquipmentPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to PropertyPlantAndEquipmentPolicyTextBlock" order="5.0" 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_InventoryPolicyTextBlock" xlink:label="InventoryPolicyTextBlock" xlink:title="InventoryPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="InventoryPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to InventoryPolicyTextBlock" order="6.0" 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_LesseeLeasesPolicyTextBlock" xlink:label="LesseeLeasesPolicyTextBlock" xlink:title="LesseeLeasesPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="LesseeLeasesPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to LesseeLeasesPolicyTextBlock" order="7.0" 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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:label="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock" order="8.0" 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_FairValueOfFinancialInstrumentsPolicy" xlink:label="FairValueOfFinancialInstrumentsPolicy" xlink:title="FairValueOfFinancialInstrumentsPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="FairValueOfFinancialInstrumentsPolicy" xlink:title="presentation: AccountingPoliciesAbstract to FairValueOfFinancialInstrumentsPolicy" order="9.0" 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_IncomeTaxPolicyTextBlock" xlink:label="IncomeTaxPolicyTextBlock" xlink:title="IncomeTaxPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="IncomeTaxPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to IncomeTaxPolicyTextBlock" order="10.0" 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_ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:label="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="ShareBasedCompensationOptionAndIncentivePlansPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ShareBasedCompensationOptionAndIncentivePlansPolicy" xlink:title="presentation: AccountingPoliciesAbstract to ShareBasedCompensationOptionAndIncentivePlansPolicy" order="11.0" 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_CreditLossFinancialInstrumentPolicyTextBlock" xlink:label="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="CreditLossFinancialInstrumentPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="CreditLossFinancialInstrumentPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to CreditLossFinancialInstrumentPolicyTextBlock" order="12.0" 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_IntangibleAssetsFiniteLivedPolicy" xlink:label="IntangibleAssetsFiniteLivedPolicy" xlink:title="IntangibleAssetsFiniteLivedPolicy" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="IntangibleAssetsFiniteLivedPolicy" xlink:title="presentation: AccountingPoliciesAbstract to IntangibleAssetsFiniteLivedPolicy" order="13.0" 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_ComprehensiveIncomePolicyPolicyTextBlock" xlink:label="ComprehensiveIncomePolicyPolicyTextBlock" xlink:title="ComprehensiveIncomePolicyPolicyTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ComprehensiveIncomePolicyPolicyTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ComprehensiveIncomePolicyPolicyTextBlock" order="14.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:label="DisaggregationOfRevenueTableTextBlock" xlink:title="DisaggregationOfRevenueTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="DisaggregationOfRevenueTableTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to DisaggregationOfRevenueTableTextBlock" order="0.0" 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_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="ScheduleOfInventoryCurrentTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ScheduleOfInventoryCurrentTableTextBlock" xlink:title="presentation: AccountingPoliciesAbstract to ScheduleOfInventoryCurrentTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:label="ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:title="ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock" order="0.0" 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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:label="ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:title="ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShareTables">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="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="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:title="presentation: EarningsPerShareAbstract to ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables">
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:label="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:title="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:label="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:title="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:to="ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" xlink:title="presentation: SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract to ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:label="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:title="ScheduleOfSegmentReportingInformationBySegmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="presentation: SegmentGeographicalDomain to US" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CA" xlink:label="CA" xlink:title="CA" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="CA" xlink:title="presentation: SegmentGeographicalDomain to CA" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_ES" xlink:label="ES" xlink:title="ES" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="ES" xlink:title="presentation: SegmentGeographicalDomain to ES" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="presentation: StatementGeographicalAxis to SegmentGeographicalDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="StatementGeographicalAxis" xlink:title="presentation: ScheduleOfSegmentReportingInformationBySegmentTable to StatementGeographicalAxis" order="0.0" 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_SegmentReportingInformationLineItems" xlink:label="SegmentReportingInformationLineItems" xlink:title="SegmentReportingInformationLineItems" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_BusinessDescriptionAbstract" xlink:label="BusinessDescriptionAbstract" xlink:title="BusinessDescriptionAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfStores" xlink:label="NumberOfStores" xlink:title="NumberOfStores" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BusinessDescriptionAbstract" xlink:to="NumberOfStores" xlink:title="presentation: BusinessDescriptionAbstract to NumberOfStores" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NumberOfStoresTemporarilyClosed" xlink:label="NumberOfStoresTemporarilyClosed" xlink:title="NumberOfStoresTemporarilyClosed" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BusinessDescriptionAbstract" xlink:to="NumberOfStoresTemporarilyClosed" xlink:title="presentation: BusinessDescriptionAbstract to NumberOfStoresTemporarilyClosed" order="1.0" 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_NumberOfOperatingSegments" xlink:label="NumberOfOperatingSegments" xlink:title="NumberOfOperatingSegments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BusinessDescriptionAbstract" xlink:to="NumberOfOperatingSegments" xlink:title="presentation: BusinessDescriptionAbstract to NumberOfOperatingSegments" order="2.0" 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_NumberOfReportableSegments" xlink:label="NumberOfReportableSegments" xlink:title="NumberOfReportableSegments" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BusinessDescriptionAbstract" xlink:to="NumberOfReportableSegments" xlink:title="presentation: BusinessDescriptionAbstract to NumberOfReportableSegments" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentReportingInformationLineItems" xlink:to="BusinessDescriptionAbstract" xlink:title="presentation: SegmentReportingInformationLineItems to BusinessDescriptionAbstract" order="0.0" 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="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="SegmentReportingInformationLineItems" xlink:title="presentation: ScheduleOfSegmentReportingInformationBySegmentTable to SegmentReportingInformationLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ScheduleOfSegmentReportingInformationBySegmentTable" xlink:title="presentation: AccountingPoliciesAbstract to ScheduleOfSegmentReportingInformationBySegmentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisaggregationOfRevenueTable" xlink:label="DisaggregationOfRevenueTable" xlink:title="DisaggregationOfRevenueTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="RangeAxis" xlink:title="presentation: DisaggregationOfRevenueTable to RangeAxis" order="0.0" 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_StatementGeographicalAxis" xlink:label="StatementGeographicalAxis" xlink:title="StatementGeographicalAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_SegmentGeographicalDomain" xlink:label="SegmentGeographicalDomain" xlink:title="SegmentGeographicalDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_US" xlink:label="US" xlink:title="US" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="US" xlink:title="presentation: SegmentGeographicalDomain to US" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/country/2024/country-2024.xsd#country_CA" xlink:label="CA" xlink:title="CA" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="CA" xlink:title="presentation: SegmentGeographicalDomain to CA" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_OtherCountriesMember" xlink:label="OtherCountriesMember" xlink:title="OtherCountriesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="OtherCountriesMember" xlink:title="presentation: SegmentGeographicalDomain to OtherCountriesMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AllOtherCountriesMember" xlink:label="AllOtherCountriesMember" xlink:title="AllOtherCountriesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SegmentGeographicalDomain" xlink:to="AllOtherCountriesMember" xlink:title="presentation: SegmentGeographicalDomain to AllOtherCountriesMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StatementGeographicalAxis" xlink:to="SegmentGeographicalDomain" xlink:title="presentation: StatementGeographicalAxis to SegmentGeographicalDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="StatementGeographicalAxis" xlink:title="presentation: DisaggregationOfRevenueTable to StatementGeographicalAxis" order="1.0" 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_ConcentrationRiskByTypeAxis" xlink:label="ConcentrationRiskByTypeAxis" xlink:title="ConcentrationRiskByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="ConcentrationRiskTypeDomain" xlink:title="ConcentrationRiskTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GeographicConcentrationRiskMember" xlink:label="GeographicConcentrationRiskMember" xlink:title="GeographicConcentrationRiskMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskTypeDomain" xlink:to="GeographicConcentrationRiskMember" xlink:title="presentation: ConcentrationRiskTypeDomain to GeographicConcentrationRiskMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskByTypeAxis" xlink:to="ConcentrationRiskTypeDomain" xlink:title="presentation: ConcentrationRiskByTypeAxis to ConcentrationRiskTypeDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="ConcentrationRiskByTypeAxis" xlink:title="presentation: DisaggregationOfRevenueTable to ConcentrationRiskByTypeAxis" order="2.0" 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_ConcentrationRiskByBenchmarkAxis" xlink:label="ConcentrationRiskByBenchmarkAxis" xlink:title="ConcentrationRiskByBenchmarkAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="ConcentrationRiskBenchmarkDomain" xlink:title="ConcentrationRiskBenchmarkDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SalesRevenueNetMember" xlink:label="SalesRevenueNetMember" xlink:title="SalesRevenueNetMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskBenchmarkDomain" xlink:to="SalesRevenueNetMember" xlink:title="presentation: ConcentrationRiskBenchmarkDomain to SalesRevenueNetMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ConcentrationRiskByBenchmarkAxis" xlink:to="ConcentrationRiskBenchmarkDomain" xlink:title="presentation: ConcentrationRiskByBenchmarkAxis to ConcentrationRiskBenchmarkDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="ConcentrationRiskByBenchmarkAxis" xlink:title="presentation: DisaggregationOfRevenueTable to ConcentrationRiskByBenchmarkAxis" order="3.0" 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_BalanceSheetLocationAxis" xlink:label="BalanceSheetLocationAxis" xlink:title="BalanceSheetLocationAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="BalanceSheetLocationDomain" xlink:title="BalanceSheetLocationDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:label="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:title="AccruedLiabilitiesAndOtherLiabilitiesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="BalanceSheetLocationDomain" xlink:to="AccruedLiabilitiesAndOtherLiabilitiesMember" xlink:title="presentation: BalanceSheetLocationDomain to AccruedLiabilitiesAndOtherLiabilitiesMember" order="0.0" 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="BalanceSheetLocationAxis" xlink:to="BalanceSheetLocationDomain" xlink:title="presentation: BalanceSheetLocationAxis to BalanceSheetLocationDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="BalanceSheetLocationAxis" xlink:title="presentation: DisaggregationOfRevenueTable to BalanceSheetLocationAxis" order="4.0" 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_DisaggregationOfRevenueLineItems" xlink:label="DisaggregationOfRevenueLineItems" xlink:title="DisaggregationOfRevenueLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="RevenueFromContractWithCustomerAbstract" xlink:title="RevenueFromContractWithCustomerAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:label="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:title="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_InventoryMerchandiseExpectedToBeReturned" xlink:label="InventoryMerchandiseExpectedToBeReturned" xlink:title="InventoryMerchandiseExpectedToBeReturned" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="InventoryMerchandiseExpectedToBeReturned" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to InventoryMerchandiseExpectedToBeReturned" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_GiftCardRedemptionPeriod" xlink:label="GiftCardRedemptionPeriod" xlink:title="GiftCardRedemptionPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="GiftCardRedemptionPeriod" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to GiftCardRedemptionPeriod" order="2.0" 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_ContractWithCustomerLiability" xlink:label="ContractWithCustomerLiability" xlink:title="ContractWithCustomerLiability" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerLiability" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerLiability" order="3.0" 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_ContractWithCustomerLiabilityRevenueRecognized" xlink:label="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="ContractWithCustomerLiabilityRevenueRecognized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="ContractWithCustomerLiabilityRevenueRecognized" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to ContractWithCustomerLiabilityRevenueRecognized" order="4.0" 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_DeferredRevenueRevenueRecognized1" xlink:label="DeferredRevenueRevenueRecognized1" xlink:title="DeferredRevenueRevenueRecognized1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RevenueFromContractWithCustomerAbstract" xlink:to="DeferredRevenueRevenueRecognized1" xlink:title="presentation: RevenueFromContractWithCustomerAbstract to DeferredRevenueRevenueRecognized1" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueLineItems" xlink:to="RevenueFromContractWithCustomerAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to RevenueFromContractWithCustomerAbstract" order="0.0" 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_DisaggregationOfRevenueAbstract" xlink:label="DisaggregationOfRevenueAbstract" xlink:title="DisaggregationOfRevenueAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="RevenueFromContractWithCustomerExcludingAssessedTax" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="RevenueFromContractWithCustomerExcludingAssessedTax" xlink:title="presentation: DisaggregationOfRevenueAbstract to RevenueFromContractWithCustomerExcludingAssessedTax" order="0.0" 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_ConcentrationRiskPercentage1" xlink:label="ConcentrationRiskPercentage1" xlink:title="ConcentrationRiskPercentage1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueAbstract" xlink:to="ConcentrationRiskPercentage1" xlink:title="presentation: DisaggregationOfRevenueAbstract to ConcentrationRiskPercentage1" order="1.0" 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="DisaggregationOfRevenueLineItems" xlink:to="DisaggregationOfRevenueAbstract" xlink:title="presentation: DisaggregationOfRevenueLineItems to DisaggregationOfRevenueAbstract" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisaggregationOfRevenueTable" xlink:to="DisaggregationOfRevenueLineItems" xlink:title="presentation: DisaggregationOfRevenueTable to DisaggregationOfRevenueLineItems" order="5.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="DisaggregationOfRevenueTable" xlink:title="presentation: AccountingPoliciesAbstract to DisaggregationOfRevenueTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_DiscountsAbstract" xlink:label="DiscountsAbstract" xlink:title="DiscountsAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NumberOfClassesOfCustomerDiscounts" xlink:label="NumberOfClassesOfCustomerDiscounts" xlink:title="NumberOfClassesOfCustomerDiscounts" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DiscountsAbstract" xlink:to="NumberOfClassesOfCustomerDiscounts" xlink:title="presentation: DiscountsAbstract to NumberOfClassesOfCustomerDiscounts" order="0.0" 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="AccountingPoliciesAbstract" xlink:to="DiscountsAbstract" xlink:title="presentation: AccountingPoliciesAbstract to DiscountsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfPropertyPlantAndEquipmentTable" xlink:label="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="ScheduleOfPropertyPlantAndEquipmentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis" xlink:label="PropertyPlantAndEquipmentByTypeAxis" xlink:title="PropertyPlantAndEquipmentByTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain" xlink:label="PropertyPlantAndEquipmentTypeDomain" xlink:title="PropertyPlantAndEquipmentTypeDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_MachineryAndEquipmentMember" xlink:label="MachineryAndEquipmentMember" xlink:title="MachineryAndEquipmentMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="MachineryAndEquipmentMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to MachineryAndEquipmentMember" order="0.0" 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_FurnitureAndFixturesMember" xlink:label="FurnitureAndFixturesMember" xlink:title="FurnitureAndFixturesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="FurnitureAndFixturesMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to FurnitureAndFixturesMember" order="1.0" 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_VehiclesMember" xlink:label="VehiclesMember" xlink:title="VehiclesMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="VehiclesMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to VehiclesMember" order="2.0" 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_BuildingAndBuildingImprovementsMember" xlink:label="BuildingAndBuildingImprovementsMember" xlink:title="BuildingAndBuildingImprovementsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentTypeDomain" xlink:to="BuildingAndBuildingImprovementsMember" xlink:title="presentation: PropertyPlantAndEquipmentTypeDomain to BuildingAndBuildingImprovementsMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentByTypeAxis" xlink:to="PropertyPlantAndEquipmentTypeDomain" xlink:title="presentation: PropertyPlantAndEquipmentByTypeAxis to PropertyPlantAndEquipmentTypeDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentByTypeAxis" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentByTypeAxis" order="0.0" 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="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" 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_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to RangeAxis" order="1.0" 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_PropertyPlantAndEquipmentLineItems" xlink:label="PropertyPlantAndEquipmentLineItems" xlink:title="PropertyPlantAndEquipmentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:label="PropertyPlantAndEquipmentNetAbstract" xlink:title="PropertyPlantAndEquipmentNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife" xlink:label="PropertyPlantAndEquipmentUsefulLife" xlink:title="PropertyPlantAndEquipmentUsefulLife" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentNetAbstract" xlink:to="PropertyPlantAndEquipmentUsefulLife" xlink:title="presentation: PropertyPlantAndEquipmentNetAbstract to PropertyPlantAndEquipmentUsefulLife" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PropertyPlantAndEquipmentLineItems" xlink:to="PropertyPlantAndEquipmentNetAbstract" xlink:title="presentation: PropertyPlantAndEquipmentLineItems to PropertyPlantAndEquipmentNetAbstract" order="0.0" 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="ScheduleOfPropertyPlantAndEquipmentTable" xlink:to="PropertyPlantAndEquipmentLineItems" xlink:title="presentation: ScheduleOfPropertyPlantAndEquipmentTable to PropertyPlantAndEquipmentLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ScheduleOfPropertyPlantAndEquipmentTable" xlink:title="presentation: AccountingPoliciesAbstract to ScheduleOfPropertyPlantAndEquipmentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNetAbstract" xlink:label="InventoryNetAbstract" xlink:title="InventoryNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="InventoryFinishedGoods" xlink:title="InventoryFinishedGoods" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryNetAbstract" xlink:to="InventoryFinishedGoods" xlink:title="presentation: InventoryNetAbstract to InventoryFinishedGoods" order="0.0" 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_InventoryWorkInProcessAndRawMaterials" xlink:label="InventoryWorkInProcessAndRawMaterials" xlink:title="InventoryWorkInProcessAndRawMaterials" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryNetAbstract" xlink:to="InventoryWorkInProcessAndRawMaterials" xlink:title="presentation: InventoryNetAbstract to InventoryWorkInProcessAndRawMaterials" order="1.0" 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_OtherInventoryInTransit" xlink:label="OtherInventoryInTransit" xlink:title="OtherInventoryInTransit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryNetAbstract" xlink:to="OtherInventoryInTransit" xlink:title="presentation: InventoryNetAbstract to OtherInventoryInTransit" order="2.0" 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_InventoryNet" xlink:label="InventoryNet" xlink:title="InventoryNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="InventoryNetAbstract" xlink:to="InventoryNet" xlink:title="presentation: InventoryNetAbstract to InventoryNet" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="InventoryNetAbstract" xlink:title="presentation: AccountingPoliciesAbstract to InventoryNetAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_FairValueOfFinancialInstrumentsAbstract" xlink:label="FairValueOfFinancialInstrumentsAbstract" xlink:title="FairValueOfFinancialInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:label="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:title="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FairValueOfFinancialInstrumentsAbstract" xlink:to="FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" xlink:title="presentation: FairValueOfFinancialInstrumentsAbstract to FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="FairValueOfFinancialInstrumentsAbstract" xlink:title="presentation: AccountingPoliciesAbstract to FairValueOfFinancialInstrumentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_AccountsReceivableAndExpectedCreditLossesAbstract" xlink:label="AccountsReceivableAndExpectedCreditLossesAbstract" xlink:title="AccountsReceivableAndExpectedCreditLossesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivable" xlink:label="AllowanceForDoubtfulAccountsReceivable" xlink:title="AllowanceForDoubtfulAccountsReceivable" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountsReceivableAndExpectedCreditLossesAbstract" xlink:to="AllowanceForDoubtfulAccountsReceivable" xlink:title="presentation: AccountsReceivableAndExpectedCreditLossesAbstract to AllowanceForDoubtfulAccountsReceivable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="AccountsReceivableAndExpectedCreditLossesAbstract" xlink:title="presentation: AccountingPoliciesAbstract to AccountsReceivableAndExpectedCreditLossesAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="AccountingPoliciesAbstract" xlink:title="AccountingPoliciesAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:label="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:title="ScheduleOfFiniteLivedIntangibleAssetsTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:title="FiniteLivedIntangibleAssetsByMajorClassAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:title="FiniteLivedIntangibleAssetsMajorClassNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntellectualPropertyMember" xlink:label="IntellectualPropertyMember" xlink:title="IntellectualPropertyMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="IntellectualPropertyMember" xlink:title="presentation: FiniteLivedIntangibleAssetsMajorClassNameDomain to IntellectualPropertyMember" order="0.0" 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="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:title="presentation: FiniteLivedIntangibleAssetsByMajorClassAxis to FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:title="presentation: ScheduleOfFiniteLivedIntangibleAssetsTable to FiniteLivedIntangibleAssetsByMajorClassAxis" order="0.0" 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="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfFiniteLivedIntangibleAssetsTable to RangeAxis" order="1.0" 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_FiniteLivedIntangibleAssetsLineItems" xlink:label="FiniteLivedIntangibleAssetsLineItems" xlink:title="FiniteLivedIntangibleAssetsLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsNetAbstract" xlink:label="FiniteLivedIntangibleAssetsNetAbstract" xlink:title="FiniteLivedIntangibleAssetsNetAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:label="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:title="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife" order="0.0" 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_AmortizationOfIntangibleAssets" xlink:label="AmortizationOfIntangibleAssets" xlink:title="AmortizationOfIntangibleAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="AmortizationOfIntangibleAssets" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to AmortizationOfIntangibleAssets" order="1.0" 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_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear" order="2.0" 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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths" order="3.0" 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo" order="4.0" 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to FiniteLivedIntangibleAssetsAmortizationExpenseYearThree" order="5.0" 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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:label="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:title="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsNetAbstract" xlink:to="FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" xlink:title="presentation: FiniteLivedIntangibleAssetsNetAbstract to FiniteLivedIntangibleAssetsAmortizationExpenseYearFour" order="6.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="FiniteLivedIntangibleAssetsLineItems" xlink:to="FiniteLivedIntangibleAssetsNetAbstract" xlink:title="presentation: FiniteLivedIntangibleAssetsLineItems to FiniteLivedIntangibleAssetsNetAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:to="FiniteLivedIntangibleAssetsLineItems" xlink:title="presentation: ScheduleOfFiniteLivedIntangibleAssetsTable to FiniteLivedIntangibleAssetsLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AccountingPoliciesAbstract" xlink:to="ScheduleOfFiniteLivedIntangibleAssetsTable" xlink:title="presentation: AccountingPoliciesAbstract to ScheduleOfFiniteLivedIntangibleAssetsTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="DebtDisclosureAbstract" xlink:title="DebtDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentTable" xlink:label="DebtInstrumentTable" xlink:title="DebtInstrumentTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="LineOfCreditFacilityAxis" xlink:title="LineOfCreditFacilityAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="LineOfCreditFacilityLenderDomain" xlink:title="LineOfCreditFacilityLenderDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_JPMorganChaseBankNAMember" xlink:label="JPMorganChaseBankNAMember" xlink:title="JPMorganChaseBankNAMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityLenderDomain" xlink:to="JPMorganChaseBankNAMember" xlink:title="presentation: LineOfCreditFacilityLenderDomain to JPMorganChaseBankNAMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="LineOfCreditFacilityAxis" xlink:to="LineOfCreditFacilityLenderDomain" xlink:title="presentation: LineOfCreditFacilityAxis to LineOfCreditFacilityLenderDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="LineOfCreditFacilityAxis" xlink:title="presentation: DebtInstrumentTable to LineOfCreditFacilityAxis" order="0.0" 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_DebtInstrumentLineItems" xlink:label="DebtInstrumentLineItems" xlink:title="DebtInstrumentLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentsAbstract" xlink:label="DebtInstrumentsAbstract" xlink:title="DebtInstrumentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="LineOfCreditFacilityMaximumBorrowingCapacity" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="LineOfCreditFacilityMaximumBorrowingCapacity" xlink:title="presentation: DebtInstrumentsAbstract to LineOfCreditFacilityMaximumBorrowingCapacity" order="0.0" 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_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="DebtInstrumentBasisSpreadOnVariableRate1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtInstrumentBasisSpreadOnVariableRate1" xlink:title="presentation: DebtInstrumentsAbstract to DebtInstrumentBasisSpreadOnVariableRate1" order="1.0" 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_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:label="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:title="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" xlink:title="presentation: DebtInstrumentsAbstract to DebtInstrumentVariableInterestRateTypeExtensibleEnumeration" order="2.0" 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_DebtInstrumentTerm" xlink:label="DebtInstrumentTerm" xlink:title="DebtInstrumentTerm" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="DebtInstrumentTerm" xlink:title="presentation: DebtInstrumentsAbstract to DebtInstrumentTerm" order="3.0" 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_ProceedsFromLinesOfCredit" xlink:label="ProceedsFromLinesOfCredit" xlink:title="ProceedsFromLinesOfCredit" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentsAbstract" xlink:to="ProceedsFromLinesOfCredit" xlink:title="presentation: DebtInstrumentsAbstract to ProceedsFromLinesOfCredit" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentLineItems" xlink:to="DebtInstrumentsAbstract" xlink:title="presentation: DebtInstrumentLineItems to DebtInstrumentsAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtInstrumentTable" xlink:to="DebtInstrumentLineItems" xlink:title="presentation: DebtInstrumentTable to DebtInstrumentLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DebtDisclosureAbstract" xlink:to="DebtInstrumentTable" xlink:title="presentation: DebtDisclosureAbstract to DebtInstrumentTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/IncomeTaxDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="IncomeTaxDisclosureAbstract" xlink:title="IncomeTaxDisclosureAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="EffectiveIncomeTaxRateContinuingOperations" xlink:title="EffectiveIncomeTaxRateContinuingOperations" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="IncomeTaxDisclosureAbstract" xlink:to="EffectiveIncomeTaxRateContinuingOperations" xlink:title="presentation: IncomeTaxDisclosureAbstract to EffectiveIncomeTaxRateContinuingOperations" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="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="PlanNameAxis" xlink:title="PlanNameAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="PlanNameDomain" xlink:title="PlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TwoThousandAndThirteenRestrictedStockPlanMember" xlink:label="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:title="TwoThousandAndThirteenRestrictedStockPlanMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PlanNameDomain" xlink:to="TwoThousandAndThirteenRestrictedStockPlanMember" xlink:title="presentation: PlanNameDomain to TwoThousandAndThirteenRestrictedStockPlanMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:label="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:title="TwoThousandAndTwentyThreeRestrictedStockPlanMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="PlanNameDomain" xlink:to="TwoThousandAndTwentyThreeRestrictedStockPlanMember" xlink:title="presentation: PlanNameDomain to TwoThousandAndTwentyThreeRestrictedStockPlanMember" order="1.0" 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="PlanNameAxis" xlink:to="PlanNameDomain" xlink:title="presentation: PlanNameAxis to PlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="PlanNameAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to PlanNameAxis" order="0.0" 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_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="RestrictedStockUnitsRSUMember" xlink:title="RestrictedStockUnitsRSUMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:label="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="ServicedBasedRestrictedStockUnitsRSUsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="presentation: RestrictedStockUnitsRSUMember to ServicedBasedRestrictedStockUnitsRSUsMember" order="0.0" 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="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockUnitsRSUMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockUnitsRSUMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="presentation: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="1.0" 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_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_NonEmployeeDirectorMember" xlink:label="NonEmployeeDirectorMember" xlink:title="NonEmployeeDirectorMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="NonEmployeeDirectorMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to NonEmployeeDirectorMember" order="0.0" 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_ChiefExecutiveOfficerMember" xlink:label="ChiefExecutiveOfficerMember" xlink:title="ChiefExecutiveOfficerMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ChiefExecutiveOfficerMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to ChiefExecutiveOfficerMember" order="1.0" 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_ShareBasedPaymentArrangementEmployeeMember" xlink:label="ShareBasedPaymentArrangementEmployeeMember" xlink:title="ShareBasedPaymentArrangementEmployeeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ShareBasedPaymentArrangementEmployeeMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to ShareBasedPaymentArrangementEmployeeMember" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_DirectorMember" xlink:label="DirectorMember" xlink:title="DirectorMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="DirectorMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to DirectorMember" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="presentation: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="TitleOfIndividualAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to TitleOfIndividualAxis" order="2.0" 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="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="MinimumMember" xlink:title="MinimumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MinimumMember" xlink:title="presentation: RangeMember to MinimumMember" order="0.0" 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_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="RangeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to RangeAxis" order="3.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="CommonStockCapitalSharesReservedForFutureIssuance" xlink:title="CommonStockCapitalSharesReservedForFutureIssuance" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="CommonStockCapitalSharesReservedForFutureIssuance" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract to CommonStockCapitalSharesReservedForFutureIssuance" order="0.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1" order="1.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_RestrictedStockAndRestrictedStockUnitsMember" xlink:label="RestrictedStockAndRestrictedStockUnitsMember" xlink:title="RestrictedStockAndRestrictedStockUnitsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockAndRestrictedStockUnitsMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockAndRestrictedStockUnitsMember" order="0.0" 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="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="presentation: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="0.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="0.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="1.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" order="2.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" order="3.0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber_2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval" order="5.0" 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="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward" order="0.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="0.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="1.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue" order="2.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue" order="3.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue_2" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue" order="4.0" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward" order="1.0" 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="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:title="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockUnitsRSUMember" xlink:label="RestrictedStockUnitsRSUMember" xlink:title="RestrictedStockUnitsRSUMember" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ServicedBasedRestrictedStockUnitsRSUsMember" xlink:label="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="ServicedBasedRestrictedStockUnitsRSUsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="ServicedBasedRestrictedStockUnitsRSUsMember" xlink:title="presentation: RestrictedStockUnitsRSUMember to ServicedBasedRestrictedStockUnitsRSUsMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:label="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:title="PerformanceBasedRestrictedStockUnitsRSUsMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RestrictedStockUnitsRSUMember" xlink:to="PerformanceBasedRestrictedStockUnitsRSUsMember" xlink:title="presentation: RestrictedStockUnitsRSUMember to PerformanceBasedRestrictedStockUnitsRSUsMember" order="1.0" 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="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockUnitsRSUMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockUnitsRSUMember" order="0.0" 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="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="presentation: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="AwardTypeAxis" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to AwardTypeAxis" order="0.0" 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationAbstract" xlink:label="ShareBasedCompensationAbstract" xlink:title="ShareBasedCompensationAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="AllocatedShareBasedCompensationExpense" xlink:title="AllocatedShareBasedCompensationExpense" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="AllocatedShareBasedCompensationExpense" xlink:title="presentation: ShareBasedCompensationAbstract to AllocatedShareBasedCompensationExpense" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" xlink:title="presentation: ShareBasedCompensationAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" xlink:title="presentation: ShareBasedCompensationAbstract to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" xlink:title="presentation: ShareBasedCompensationAbstract to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears" order="3.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:label="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" xlink:title="presentation: ShareBasedCompensationAbstract to EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears" order="4.0" 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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:title="presentation: ShareBasedCompensationAbstract to EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" order="5.0" 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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:label="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationAbstract" xlink:to="StockIssuedDuringPeriodSharesRestrictedStockAwardGross" xlink:title="presentation: ShareBasedCompensationAbstract to StockIssuedDuringPeriodSharesRestrictedStockAwardGross" order="6.0" 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="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="ShareBasedCompensationAbstract" xlink:title="presentation: ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems to ShareBasedCompensationAbstract" order="0.0" 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="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:title="presentation: ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable to ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:title="presentation: DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract to ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/EarningsPerShareDetails">
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareAbstract" xlink:label="EarningsPerShareAbstract" xlink:title="EarningsPerShareAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:label="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:title="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:label="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:title="ScheduleOfEarningsPerShareDilutedByCommonClassTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="AwardTypeAxis" xlink:title="AwardTypeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="RestrictedStockMember" xlink:title="RestrictedStockMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="RestrictedStockMember" xlink:title="presentation: ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain to RestrictedStockMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="AwardTypeAxis" xlink:to="ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:title="presentation: AwardTypeAxis to ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:to="AwardTypeAxis" xlink:title="presentation: ScheduleOfEarningsPerShareDilutedByCommonClassTable to AwardTypeAxis" order="0.0" 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_TitleOfIndividualAxis" xlink:label="TitleOfIndividualAxis" xlink:title="TitleOfIndividualAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="TitleOfIndividualWithRelationshipToEntityDomain" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_DirectorMember" xlink:label="DirectorMember" xlink:title="DirectorMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="DirectorMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to DirectorMember" order="0.0" 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_ShareBasedPaymentArrangementEmployeeMember" xlink:label="ShareBasedPaymentArrangementEmployeeMember" xlink:title="ShareBasedPaymentArrangementEmployeeMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="ShareBasedPaymentArrangementEmployeeMember" xlink:title="presentation: TitleOfIndividualWithRelationshipToEntityDomain to ShareBasedPaymentArrangementEmployeeMember" order="1.0" 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="TitleOfIndividualAxis" xlink:to="TitleOfIndividualWithRelationshipToEntityDomain" xlink:title="presentation: TitleOfIndividualAxis to TitleOfIndividualWithRelationshipToEntityDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:to="TitleOfIndividualAxis" xlink:title="presentation: ScheduleOfEarningsPerShareDilutedByCommonClassTable to TitleOfIndividualAxis" order="1.0" 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_EarningsPerShareDilutedLineItems" xlink:label="EarningsPerShareDilutedLineItems" xlink:title="EarningsPerShareDilutedLineItems" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAbstract" xlink:label="NetIncomeLossAbstract" xlink:title="NetIncomeLossAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="NetIncomeLoss" xlink:title="NetIncomeLoss" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetIncomeLossAbstract" xlink:to="NetIncomeLoss" xlink:title="presentation: NetIncomeLossAbstract to NetIncomeLoss" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareDilutedLineItems" xlink:to="NetIncomeLossAbstract" xlink:title="presentation: EarningsPerShareDilutedLineItems to NetIncomeLossAbstract" order="0.0" 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_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:label="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="WeightedAverageNumberOfSharesOutstandingAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="WeightedAverageNumberOfSharesOutstandingBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfSharesOutstandingBasic" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfSharesOutstandingBasic" order="0.0" 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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="1.0" 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_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="WeightedAverageNumberOfDilutedSharesOutstanding" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="WeightedAverageNumberOfDilutedSharesOutstanding" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to WeightedAverageNumberOfDilutedSharesOutstanding" order="2.0" 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_EarningsPerShareBasic" xlink:label="EarningsPerShareBasic" xlink:title="EarningsPerShareBasic" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="EarningsPerShareBasic" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to EarningsPerShareBasic" order="3.0" 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="EarningsPerShareDiluted" xlink:title="EarningsPerShareDiluted" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="EarningsPerShareDiluted" xlink:title="presentation: WeightedAverageNumberOfSharesOutstandingAbstract to EarningsPerShareDiluted" order="4.0" 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="EarningsPerShareDilutedLineItems" xlink:to="WeightedAverageNumberOfSharesOutstandingAbstract" xlink:title="presentation: EarningsPerShareDilutedLineItems to WeightedAverageNumberOfSharesOutstandingAbstract" order="1.0" 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="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:to="EarningsPerShareDilutedLineItems" xlink:title="presentation: ScheduleOfEarningsPerShareDilutedByCommonClassTable to EarningsPerShareDilutedLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:to="ScheduleOfEarningsPerShareDilutedByCommonClassTable" xlink:title="presentation: NetIncomeLossAvailableToCommonStockholdersBasicAbstract to ScheduleOfEarningsPerShareDilutedByCommonClassTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EarningsPerShareAbstract" xlink:to="NetIncomeLossAvailableToCommonStockholdersBasicAbstract" xlink:title="presentation: EarningsPerShareAbstract to NetIncomeLossAvailableToCommonStockholdersBasicAbstract" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails">
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:label="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:title="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="ClassOfTreasuryStockTable" xlink:title="ClassOfTreasuryStockTable" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="RangeAxis" xlink:title="RangeAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="RangeMember" xlink:title="RangeMember" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="MaximumMember" xlink:title="MaximumMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeMember" xlink:to="MaximumMember" xlink:title="presentation: RangeMember to MaximumMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="RangeAxis" xlink:to="RangeMember" xlink:title="presentation: RangeAxis to RangeMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ClassOfTreasuryStockTable" xlink:to="RangeAxis" xlink:title="presentation: ClassOfTreasuryStockTable to RangeAxis" order="0.0" 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_ShareRepurchaseProgramAxis" xlink:label="ShareRepurchaseProgramAxis" xlink:title="ShareRepurchaseProgramAxis" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="ShareRepurchaseProgramDomain" xlink:title="ShareRepurchaseProgramDomain" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_ShareRepurchaseProgramMember" xlink:label="ShareRepurchaseProgramMember" xlink:title="ShareRepurchaseProgramMember" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareRepurchaseProgramDomain" xlink:to="ShareRepurchaseProgramMember" xlink:title="presentation: ShareRepurchaseProgramDomain to ShareRepurchaseProgramMember" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ShareRepurchaseProgramAxis" xlink:to="ShareRepurchaseProgramDomain" xlink:title="presentation: ShareRepurchaseProgramAxis to ShareRepurchaseProgramDomain" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ClassOfTreasuryStockTable" xlink:to="ShareRepurchaseProgramAxis" xlink:title="presentation: ClassOfTreasuryStockTable to ShareRepurchaseProgramAxis" order="1.0" 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_EquityClassOfTreasuryStockLineItems" xlink:label="EquityClassOfTreasuryStockLineItems" xlink:title="EquityClassOfTreasuryStockLineItems" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_StockRepurchaseProgramAbstract" xlink:label="StockRepurchaseProgramAbstract" xlink:title="StockRepurchaseProgramAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_StockRepurchaseProgramAuthorizedAmount1" xlink:label="StockRepurchaseProgramAuthorizedAmount1" xlink:title="StockRepurchaseProgramAuthorizedAmount1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockRepurchaseProgramAbstract" xlink:to="StockRepurchaseProgramAuthorizedAmount1" xlink:title="presentation: StockRepurchaseProgramAbstract to StockRepurchaseProgramAuthorizedAmount1" order="0.0" 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_TreasuryStockCommonValue" xlink:label="TreasuryStockCommonValue" xlink:title="TreasuryStockCommonValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockRepurchaseProgramAbstract" xlink:to="TreasuryStockCommonValue" xlink:title="presentation: StockRepurchaseProgramAbstract to TreasuryStockCommonValue" order="1.0" 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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:label="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="StockRepurchaseProgramAbstract" xlink:to="StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" xlink:title="presentation: StockRepurchaseProgramAbstract to StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="EquityClassOfTreasuryStockLineItems" xlink:to="StockRepurchaseProgramAbstract" xlink:title="presentation: EquityClassOfTreasuryStockLineItems to StockRepurchaseProgramAbstract" order="0.0" 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="ClassOfTreasuryStockTable" xlink:to="EquityClassOfTreasuryStockLineItems" xlink:title="presentation: ClassOfTreasuryStockTable to EquityClassOfTreasuryStockLineItems" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract" xlink:to="ClassOfTreasuryStockTable" xlink:title="presentation: SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract to ClassOfTreasuryStockTable" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
  <link:presentationLink xlink:type="extended" xlink:role="http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails">
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:label="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:title="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_SalesAndDisposalOfHeadquarterAbstract" xlink:label="SalesAndDisposalOfHeadquarterAbstract" xlink:title="SalesAndDisposalOfHeadquarterAbstract" />
    <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfProductiveAssets" xlink:label="ProceedsFromSaleOfProductiveAssets" xlink:title="ProceedsFromSaleOfProductiveAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SalesAndDisposalOfHeadquarterAbstract" xlink:to="ProceedsFromSaleOfProductiveAssets" xlink:title="presentation: SalesAndDisposalOfHeadquarterAbstract to ProceedsFromSaleOfProductiveAssets" order="0.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:loc xlink:type="locator" xlink:href="tlfa-20250331.xsd#tlfa_HeadquarterAssetsNetBookValue" xlink:label="HeadquarterAssetsNetBookValue" xlink:title="HeadquarterAssetsNetBookValue" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SalesAndDisposalOfHeadquarterAbstract" xlink:to="HeadquarterAssetsNetBookValue" xlink:title="presentation: SalesAndDisposalOfHeadquarterAbstract to HeadquarterAssetsNetBookValue" order="1.0" 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_GainLossOnDispositionOfAssets" xlink:label="GainLossOnDispositionOfAssets" xlink:title="GainLossOnDispositionOfAssets" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SalesAndDisposalOfHeadquarterAbstract" xlink:to="GainLossOnDispositionOfAssets" xlink:title="presentation: SalesAndDisposalOfHeadquarterAbstract to GainLossOnDispositionOfAssets" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:to="SalesAndDisposalOfHeadquarterAbstract" xlink:title="presentation: SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract to SalesAndDisposalOfHeadquarterAbstract" order="0.0" 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_LesseeOperatingLeaseTermOfContract" xlink:label="LesseeOperatingLeaseTermOfContract" xlink:title="LesseeOperatingLeaseTermOfContract" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:to="LesseeOperatingLeaseTermOfContract" xlink:title="presentation: SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract to LesseeOperatingLeaseTermOfContract" order="1.0" 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_LesseeOperatingLeaseRenewalTerm" xlink:label="LesseeOperatingLeaseRenewalTerm" xlink:title="LesseeOperatingLeaseRenewalTerm" />
    <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract" xlink:to="LesseeOperatingLeaseRenewalTerm" xlink:title="presentation: SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract to LesseeOperatingLeaseRenewalTerm" order="2.0" preferredLabel="http://www.xbrl.org/2003/role/label" />
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>10
<FILENAME>image00001.jpg
<TEXT>
begin 644 image00001.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  8$!08%! 8&!08'!P8("A *"@D)
M"A0.#PP0%Q08&!<4%A8:'24?&ALC'!86("P@(R8G*2HI&1\M,"TH,"4H*2C_
MVP!# 0<'!PH("A,*"A,H&A8:*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"@H
M*"@H*"@H*"@H*"@H*"@H*"@H*"@H*"C_P  1" !O CP# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
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
MM71USGQ(_P"2=^*?^P5=?^B6KHZ "BBB@ HHHH **** "BBB@ HHHH ****
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
MM145I=07D"SVD\4\+?=DB<,I^A'%,OKVUL(A+?7,%M$6VAYI @)],GOP?RH
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
MD^W[R.OK.OE_]DJT#^*=<O,<PV2PYYXWN#_[3KZ@I/<$%%%%(84444 %%%%
M'.?$C_DG?BG_ +!5U_Z):NCKG/B1_P D[\4_]@JZ_P#1+5T= !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %4;K5K*U
MU:QTV>;9>WRR/;Q[&.\1@%^0,#&X=2.O%7JX?Q1_R5;P-_U[ZE_Z!#0!W%<=
MJ'Q+\*V&H75C<ZA.+FUD,,RQV-Q($<=1N6,C\C78UY+X2OO$UMK'C--!T:PO
M[4Z].6DN+XP,'\N+(V[&R,8YSW]J /2=!UFQU_3EOM+E>6V9BH9X7B.0<'Y7
M /Z5!KGB;1]"OM-L]6OH[:YU*7R;5&5CYC9 QP#CEAR<#FK6B3:A/IL<FLVD
M-G>DG?##-YJKSQAL#/&.U>):W?\ AGQIK/C"XUG7]-LI(8_[+TCS[A4:%HSO
M:<#/>7&",':N,T >VZWJMGHFES:AJ4CQVD.W>R1/(1E@H^506/)'05R2_%KP
M8TKQKJ=R9$ +(-.NLKGID>76I\-/$J^+/!>FZH2IN&3R[D*>%E7A_P "1D>Q
M%9'AK_DL7C3_ *\[#_T&2@#K+S6]/LY=,BN;C8^I2>5:CRV/F-M+8X'' )YQ
M3]:U>QT6T2YU.?R('E2!6V,V7=@JC !/)(KA_BU)>0ZUX(DTRWBN;Q=48Q0R
MR^6KGR7X+8./RK$^)=_XJN-%L(]:T/3K.S.J69::#4#,P/G+@;?+'\Z /2/$
M_BC2/"\-O+K=T]NEQ(8HMD$DI=@,XPBD] :S]$^('AS6]4AT_3;RYDNYMVQ7
ML;B,'"EC\S(%' /4UC_%&6^AU_P3)I5M%=7JZA+Y<,LOE*W^CR9RV#CC)Z5O
M:#?^*;B_V:WHFGV5IM)\V"_,S;NPV[%X]\T -\1^.O#WAS4TT[5[V6*\>$7
MBCM)ICY98J&RB$=5(_"K?AKQ7HGB83_V)?QW+P8\V,JT<D>>FY& 8?E7%>(-
M;?0_C-+,FD:KJGF:!$ICTZ%9&3_2)3DAF7BCP3J)\:^/!XKT[3)].TNULI-/
M>2Y*+-<2^8IV,BDE0FT]3GYJ8'J%?(W[4-X+GXFB$-G[+911$9Z$EG_DXKZY
MKX>^--Z-0^*?B293D+=&#/\ US41_P#LM"$SV+]D>PV:/XAU ]9IXH![;%+'
M_P!&"O?Z\K_9IT\67PLM)MI5KVXFN#GO\VP'\D%>J4/<:"BBBD 4444 %%%%
M '.?$C_DG?BG_L%77_HEJZ.N<^)'_)._%/\ V"KK_P!$M71T %%%% !1110
M4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 5S'B[PI)
MKVJ:3J-IJ]WI5YIRS+%+;HCY$H4-D."/X!^==/10!SWAW0]4TR]>;4/$M_JT
M31E!!<0PHJMD'=E%!SP1Z<UC_P#""W]OJ6J7.D^*]3TZ/4+IKR6"*"%U$C
MD%D)Z*._:NYHH P].T:_MM#O+&[UZ\O;F?>$O98XUDA#* -H50.#DC(ZFJV@
M>"/#^BZ+9Z=#I=E,MM&(_-FMT9Y#W9CCJ3D_C72T4 8'ASPQ:>']3U>YTUVB
MMM1D29K-558HI NUF0 <;L#(]JET_P /PV7BG5M<2:1IM1BAB>,@;4$8(!'?
MG<:VJ* ,77M AUC4M%O)9I(WTNY-S&J@8<E"N#[8-'BS0(?$FFQ6=Q-)"D=S
M%<AD ))C<,!SV)%;5% '.>,/#+>(7TR:#4[G3;K3YFGAG@1&8$H4/# CHQ[5
M#H_AS6;+4H;B[\7:G?P(26MIK>!5DX(Y*H#[\'M74T4 8ZZ%$OB^3Q )I//>
MQ6P,6!MVK(S[O7.6(JO9^&(+#Q5=:UI]Q+;"]3%Y:*!Y4[CI+CL_8D=1U]:Z
M"B@ K\_?%5P;OQ/K%PW#37DTA_%R:_0*O&->^ FDZEXS&LV]^]O8RW'VBZL#
M%O#G=E@K9&T'TP<9..P#3$ST;X>:8VC^!=!L)%"RPV42R =-Y4%OU)KH:**0
MPHHHH **** "BBB@#G/B1_R3OQ3_ -@JZ_\ 1+5T=8OC:RN-3\&:_864?FW5
MUI]Q!"FX+N=HV"C)X&21UK:H **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
+ **** "BBB@#_]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>11
<FILENAME>tandylogo1.jpg
<TEXT>
begin 644 tandylogo1.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  (! 0(! 0(" @(" @(" P4# P,#
M P8$! ,%!P8'!P<&!P<("0L)" @*" <'"@T*"@L,# P,!PD.#PT,#@L,# S_
MVP!# 0(" @,# P8# P8," <(# P,# P,# P,# P,# P,# P,# P,# P,# P,
M# P,# P,# P,# P,# P,# P,# P,# S_P  1" !L -8# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
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
M5]5A6]=='OM4A>*ZO+/RXCN(D+2&,3FX6)G)9H4B;<P(8^^4 %%%% !1110
M45\A?M/>)]8N?VSM6T9=1U#^R+'P9HEY%:)\29O"45O--?:PDLH2,'SV=8(0
M2?NB)1_%7H'[:,^HW,G@.QTSQ98Z=%=7=Q)/H4GBF7PY<>*$2W.U(;^)6D#1
M,RR&,8$@ZL O(![[7R?_ ,%,O^"3WAC_ (*3R^$[S4O$%[X5U;PLTL0O+6T6
MY-W;2%6:%E++@AERK9.-S_*<\>C?LVZAIG[1'[+=O:QZGXXAMXKR[TR>[GU\
MMJBS6MY)&ZIJ%LP\^,/&5656)DC W$L6K/\ ^"<6FW-U^RYX=\1:AXA\4>(M
M4\1VWG7=QK&L3ZA\R2RH/+$C$1@C&0@&<#/2F!^:G_!7G_@D;\(/V"OV$=.U
M_P )6^N7OBL^(K2PEU?4M0:22>-X+AG3RD"P@$HIX3<,?>/.?GW_ (-]_#(\
M0?\ !4'P3.R[AI-GJ5Y]#]BFC!_.05^@O_!SUJYL_P!AKPC:@_\ 'WXUMR1Z
MA;*]/]17QI_P;.>'SJO_  4#U:[VY73/!][-G^ZS7%K&/T<T^A/4_>VFR2")
M"S$*JC)). !7R'^T=_P6?^%_[+?[8MM\(/%-AXAAN6%JMYK4<49L=/>X573>
M"P<H$="S*#C=T.#7MW[;3ZZO['/Q4/AB*:;Q#_PB>IC3D@!:5IOLLFW8!R7S
MT [XJ2C\!/V_?CWXB_X*D?\ !1BYM_#7FZG:ZCJD?ACPC:ACY8MEE,<;_P"R
M)&9IF)^[YAR<+2_\%@OV)_#7[!/Q^\(>"/#+W,X;P;8WVIW<TC,;Z^::YCFF
M ).Q6\I<(.% [G)/I?\ P;@^$M)\1_\ !1M;K5 IO-$\.W]]IBLF?]))BA)!
M[$0S358_X.4?$5CX@_X*$6 LK^TOOL/A&RMIU@F63[-*+F[8QO@_*V&4X/.&
M'K5D=+GZ8_\ !!SXQW_QB_X)K>##J4S7-WX8FN= \UCDF*!\PK_P"%XT'L@K
M\>/^"K/QKUB+_@K!\1O%.F:C<VFJ^&_$<<5A<Q/A[1[%8X8RGH5,(/UK]2_^
M#:Y6'_!.NYST/BR^*_3R;7^N:_%?]N#6)/$'[9WQ:O96+O<^,=7D)/O>S8I=
M1O8^Z/@WJL__  7M_P""J&GZMXGTZ[B^&/@G2([FXTMY"BK;Q!082R'AI[N0
ML<$-Y60#\@(^#/AOX]_X4C^U?HWB/02]NGACQ/%?60#DE4AN0ZJ3WX4 ^O-?
MLE_P;G?L^1_"[]@SQ#X_,(&K_$&]N'BEVX;[)9[X8E_[_?:3[Y'I7X=^&E.H
M>,K$2YW37:!S[EAFF(_J/_;:_:JTS]C/]ESQ5\1M01+G^Q;3_0;5FV_;KN0A
M((N.<-(R[B.0H8]J_FBTNT\9_MP_M0V\$MQ+K7C7XC:XJ--*3^\N+B7&X_W8
MUW=AA%7@ "OU4_X.D/C#-HWPR^%OP_MY7$.K7UUK5V@.,_9T2&'/J#Y\W_?-
M?/G_  ;3? "+XD_MIZOXTNX1+:_#S1GF@)7.R\NB8(S_ -^OM/X@4EM<;W/,
M?^"R_P"P%X-_X)\?%'P%X:\)ZEJ6H2ZGX9CN]5:\<,TURLTD;3J /D638<)S
MMV'DU#_P03N?L_\ P5/^&O)'F+J:<=_^);=5]@_\'''_  3^UWQ"][^T)!XE
MMKG2=%L[#1KG19;8I+:1F8QJ\<@)#@RS9*D*1O/)KXY_X(._\I4/AA_O:E_Z
M;+NGT#J?HU_P<Y^.[OP_^Q-X5T:VE:*+7_%<0N@#CS8H;:=PI]1O,;?517)_
M\&OW[0^I>+_@]X_^'&H7$L]IX1N[?5-+#G/D177FB:)?11)$'Q_>F<]ZN?\
M!TC_ ,FS_#;_ +&67_TF:O%O^#6>\*?'CXHV^>)- MI,>NVX _\ 9J70.I[3
M_P '2*2?\,U?#5Q,ZQ+XDF#1 _*[&V;#$>HPP'^\?6N\_P"#<K]J'5?CI^QA
MJ'A77+E[V\^&VH+IMI+(VYOL$L>^!"?]AEF0>B*@'2O$?^#I[XE1)I/PD\(1
MOF=Y+_5[A,_<4"&*(X]R9O\ ODT[_@U527^Q/C8W/D>=HP'^]B^_I1T#J?KG
M17BGQ#\5S^'?VY_AS8+XJO(;+7_#VL+<:"]Y&MK)) ]H89A%@.93YLBYW$87
M@#!->&?MW_$;Q1X*\=?%"^M?$VJ,_A[PQ!J/AZ'2/&T&BIX:F6*9C-?63NIN
MA+*H*'9.KA3$$4@EI*/MZBO!/VG/'&HZ/\#OAWXAF\37WA74F\2>&_MD<5S'
M91WRW-_:0W,$RN"3'Y<LF4#*1CDX!JK^VUK>I6OBWX>V\&KWW]AWSW_VS1-)
M\51>'-4UF58HC!)#</)%YD<(\TO"LT;-YB/\XC9: /H6BO&_V!/'6L_$;]ES
M1]2UV\EU"^74]8L8[B6\2]>6VMM5O+:V+7"*JW!^SQ1?OU&)?O\ .[-% '?^
M,_@SX/\ B/J4=YXA\*>&M>NX8Q#'/J.F074B1@DA SJ2%RQ..F2?6KOB[X>Z
M!\0/#W]DZ]H>CZWI0*L+*_LH[FWROW3Y;@KQVXXK8HH JZ-HMGX<TJWL-/M+
M:QL;2,106]O$L44*#@*JJ % ] *=I>E6NAV$=K96T%I:PC$<,$8CC0=>%' J
MQ10!^:__  <_>'[K4/V*_!M_$I:WT_QA$)\?P[[.Z"G\UQ^-?,W_  :Y6N_]
MJ[XA3_\ //PF8_\ OJ\MS_[+7Z5_\%?O@+)^T5_P3N^).BVL#3ZEIVGC6[%4
M&7:6T83E5'=FC21!_OU^97_!LIX^T7P1^T?\3%UC4+;3<>$7O3)<2".-((+B
M)IG+'@;5(8^P8]J?0GJ>3?\ !P'JUOJG_!4CQG' RLUG::9!,5/\?V&!N??#
M"OW)\1_M->&OV=?V0=-^(OCO4UT[2+'0K2ZN9#\TMQ*\*%8HUZO(['"CU/)
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
MW\-PV6CP'.<".VC>0?\ ?V26OT__ .#<;PC_ ,(W_P $V[.\VX_M_P 1:A?
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
ADJ1QJPRK>8,$@YK^C>BBFW<%H%%%%( HHHH **** /_9

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Apr. 30, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Mar. 31,  2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_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">1-12368<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">TANDY LEATHER FACTORY, 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_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000909724<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">75-2543540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">1900 Southeast Loop 820<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Fort Worth<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">TX<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">76140<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">817<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">872-3200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, par value $0.0024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TLF<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">8,512,554<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>14
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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">$ 23,594<span></span>
</td>
<td class="nump">$ 13,271<span></span>
</td>
</tr>
<tr class="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-trade, net of allowance for credit losses of $49 at March 31, 2025 and December 31, 2024</a></td>
<td class="nump">301<span></span>
</td>
<td class="nump">331<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventory</a></td>
<td class="nump">34,350<span></span>
</td>
<td class="nump">35,556<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesReceivable', window );">Income tax receivable</a></td>
<td class="nump">385<span></span>
</td>
<td class="nump">384<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">704<span></span>
</td>
<td class="nump">898<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Other current assets</a></td>
<td class="nump">95<span></span>
</td>
<td class="nump">96<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">59,429<span></span>
</td>
<td class="nump">50,536<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentGross', window );">Property and equipment, at cost</a></td>
<td class="nump">21,490<span></span>
</td>
<td class="nump">31,655<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation</a></td>
<td class="num">(15,239)<span></span>
</td>
<td class="num">(19,320)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">6,251<span></span>
</td>
<td class="nump">12,335<span></span>
</td>
</tr>
<tr class="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 );">Operating lease assets</a></td>
<td class="nump">10,531<span></span>
</td>
<td class="nump">10,323<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred income taxes</a></td>
<td class="nump">1,041<span></span>
</td>
<td class="nump">1,213<span></span>
</td>
</tr>
<tr class="ro">
<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 assets</a></td>
<td class="nump">664<span></span>
</td>
<td class="nump">517<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">77,916<span></span>
</td>
<td class="nump">74,924<span></span>
</td>
</tr>
<tr class="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_AccountsPayableTradeCurrent', window );">Accounts payable-trade</a></td>
<td class="nump">3,407<span></span>
</td>
<td class="nump">3,110<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesAndOtherLiabilities', window );">Accrued expenses and other liabilities</a></td>
<td class="nump">2,692<span></span>
</td>
<td class="nump">3,571<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Income taxes payable</a></td>
<td class="nump">3,884<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_OperatingLeaseLiabilityCurrent', window );">Current portion of operating lease liabilities</a></td>
<td class="nump">3,205<span></span>
</td>
<td class="nump">3,205<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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">13,188<span></span>
</td>
<td class="nump">9,886<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilityForUncertainTaxPositionsNoncurrent', window );">Uncertain tax positions</a></td>
<td class="nump">248<span></span>
</td>
<td class="nump">248<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other non-current liabilities</a></td>
<td class="nump">77<span></span>
</td>
<td class="nump">76<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities, non-current</a></td>
<td class="nump">7,514<span></span>
</td>
<td class="nump">7,561<span></span>
</td>
</tr>
<tr class="re">
<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 (Note 6)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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="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.0024 par value; 25,000,000 shares authorized; 9,936,930 and 9,920,957 shares issued at March 31, 2025 and December 31, 2024, respectively; 8,512,554 and 8,496,581 shares outstanding at March 31, 2025 and December 31, 2024, respectively</a></td>
<td class="nump">23<span></span>
</td>
<td class="nump">23<span></span>
</td>
</tr>
<tr class="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 );">Paid-in capital</a></td>
<td class="nump">4,622<span></span>
</td>
<td class="nump">4,529<span></span>
</td>
</tr>
<tr class="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">64,417<span></span>
</td>
<td class="nump">64,486<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonValue', window );">Treasury stock at cost (1,424,376 shares at March 31, 2025 and December 31, 2024)</a></td>
<td class="num">(9,773)<span></span>
</td>
<td class="num">(9,773)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss, net of tax</a></td>
<td class="num">(2,400)<span></span>
</td>
<td class="num">(2,112)<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">56,889<span></span>
</td>
<td class="nump">57,153<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">$ 77,916<span></span>
</td>
<td class="nump">$ 74,924<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_AccountsPayableTradeCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-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_AccountsPayableTradeCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedLiabilitiesAndOtherLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 nor invoiced, and liabilities classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedLiabilitiesAndOtherLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.</p></div>
<a href="javascript: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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-14A<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 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-11<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)(ii)<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 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(4))<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 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(3))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-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_AccumulatedOtherComprehensiveIncomeLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -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_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_IncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.</p></div>
<a href="javascript: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(10))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br><br>Reference 2: 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(3)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_LiabilityForUncertainTaxPositionsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount recognized for uncertainty in income taxes classified as 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilityForUncertainTaxPositionsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 after 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(24))<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_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(7))<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 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-10-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Allowance for credit losses</a></td>
<td class="nump">$ 49<span></span>
</td>
<td class="nump">$ 49<span></span>
</td>
</tr>
<tr class="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_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.0024<span></span>
</td>
<td class="nump">$ 0.0024<span></span>
</td>
</tr>
<tr class="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 (in shares)</a></td>
<td class="nump">25,000,000<span></span>
</td>
<td class="nump">25,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 (in shares)</a></td>
<td class="nump">9,936,930<span></span>
</td>
<td class="nump">9,920,957<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (in shares)</a></td>
<td class="nump">8,512,554<span></span>
</td>
<td class="nump">8,496,581<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Treasury stock, shares (in shares)</a></td>
<td class="nump">1,424,376<span></span>
</td>
<td class="nump">1,424,376<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Operations and Comprehensive Income - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Consolidated Statements of Operations and Comprehensive Income [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 19,036<span></span>
</td>
<td class="nump">$ 19,275<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="nump">8,318<span></span>
</td>
<td class="nump">8,355<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">10,718<span></span>
</td>
<td class="nump">10,920<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingCostsAndExpenses', window );">Operating expenses</a></td>
<td class="nump">10,456<span></span>
</td>
<td class="nump">10,271<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 from operations</a></td>
<td class="nump">262<span></span>
</td>
<td class="nump">649<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLossAbstract', window );"><strong>Other income (expense):</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest income</a></td>
<td class="nump">190<span></span>
</td>
<td class="nump">84<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets', window );">Gain on disposal of Headquarter (see footnote 8)</a></td>
<td class="nump">17,676<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_OtherNonoperatingIncomeExpense', window );">Other, net (see footnote 8)</a></td>
<td class="num">(1,273)<span></span>
</td>
<td class="num">(26)<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_NonoperatingIncomeExpense', window );">Total other income</a></td>
<td class="nump">16,593<span></span>
</td>
<td class="nump">58<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 before income taxes</a></td>
<td class="nump">16,855<span></span>
</td>
<td class="nump">707<span></span>
</td>
</tr>
<tr class="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 provision</a></td>
<td class="nump">4,179<span></span>
</td>
<td class="nump">182<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</a></td>
<td class="nump">12,676<span></span>
</td>
<td class="nump">525<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments, net of tax</a></td>
<td class="num">(288)<span></span>
</td>
<td class="nump">170<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_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest', window );">Comprehensive income</a></td>
<td class="nump">$ 12,388<span></span>
</td>
<td class="nump">$ 695<span></span>
</td>
</tr>
<tr class="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 per common share:</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_EarningsPerShareBasic', window );">Basic (in dollars per share)</a></td>
<td class="nump">$ 1.49<span></span>
</td>
<td class="nump">$ 0.06<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (in dollars per share)</a></td>
<td class="nump">$ 1.47<span></span>
</td>
<td class="nump">$ 0.06<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average number of shares outstanding:</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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (in shares)</a></td>
<td class="nump">8,501,204<span></span>
</td>
<td class="nump">8,400,354<span></span>
</td>
</tr>
<tr class="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 (in shares)</a></td>
<td class="nump">8,595,320<span></span>
</td>
<td class="nump">8,500,354<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_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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 2: 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(22))<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 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 4: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1A<br><br>Reference 5: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-1B<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481175/810-10-55-4K<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating 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 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<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)(a))<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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_GainLossOnDispositionOfAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-5<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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_InterestIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of interest income (expense) classified as operating.</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/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(10))<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_InterestIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_OperatingCostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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. Excludes 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_OperatingCostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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_OperatingIncomeLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingIncomeLossAbstract</td>
</tr>
<tr>
<td style="padding-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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript: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 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 2: 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(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-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_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>17
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 12,676<span></span>
</td>
<td class="nump">$ 525<span></span>
</td>
</tr>
<tr class="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 to net cash used in operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSoldDepreciation', window );">Depreciation and amortization</a></td>
<td class="nump">181<span></span>
</td>
<td class="nump">321<span></span>
</td>
</tr>
<tr class="re">
<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 asset amortization</a></td>
<td class="nump">1,105<span></span>
</td>
<td class="nump">919<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets', window );">Gain on disposal of assets</a></td>
<td class="num">(17,676)<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_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">93<span></span>
</td>
<td class="nump">197<span></span>
</td>
</tr>
<tr class="ro">
<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="nump">173<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_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable-trade</a></td>
<td class="nump">31<span></span>
</td>
<td class="num">(158)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventory</a></td>
<td class="nump">1,227<span></span>
</td>
<td class="nump">1,184<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidExpense', window );">Prepaid expenses</a></td>
<td class="nump">195<span></span>
</td>
<td class="nump">72<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherCurrentAssets', window );">Other current assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">14<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable-trade</a></td>
<td class="num">(35)<span></span>
</td>
<td class="num">(115)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses and other liabilities</a></td>
<td class="num">(879)<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_IncreaseDecreaseInDeferredIncomeTaxes', window );">Income taxes, net</a></td>
<td class="nump">3,884<span></span>
</td>
<td class="nump">163<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentAssets', window );">Other assets</a></td>
<td class="num">(150)<span></span>
</td>
<td class="num">(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_IncreaseDecreaseInOperatingLeaseLiability', window );">Operating lease liabilities</a></td>
<td class="num">(1,361)<span></span>
</td>
<td class="num">(892)<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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities', window );">Total adjustments</a></td>
<td class="num">(13,212)<span></span>
</td>
<td class="nump">561<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash used in operating activities</a></td>
<td class="num">(536)<span></span>
</td>
<td class="nump">1,086<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows used 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 );">Purchase of property and equipment</a></td>
<td class="num">(1,331)<span></span>
</td>
<td class="num">(1,227)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfProductiveAssets', window );">Proceeds from Sale of property and equipment. net</a></td>
<td class="nump">24,897<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash provided from (used in) investing activities</a></td>
<td class="nump">23,566<span></span>
</td>
<td class="num">(1,227)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeasePrincipalPayments', window );">Payment of finance lease obligations</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(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_PaymentsOfDividendsCommonStock', window );">Dividend Paid</a></td>
<td class="num">(12,745)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash used in financing activities</a></td>
<td class="num">(12,745)<span></span>
</td>
<td class="num">(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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of exchange rate changes on cash and cash equivalents</a></td>
<td class="nump">38<span></span>
</td>
<td class="nump">298<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase in cash and cash equivalents</a></td>
<td class="nump">10,323<span></span>
</td>
<td class="nump">156<span></span>
</td>
</tr>
<tr class="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, beginning of period</a></td>
<td class="nump">13,271<span></span>
</td>
<td class="nump">12,159<span></span>
</td>
</tr>
<tr class="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, end of period</a></td>
<td class="nump">$ 23,594<span></span>
</td>
<td class="nump">$ 12,315<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_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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The sum of adjustments which are added to or deducted from net income or loss, including the portion attributable to noncontrolling interest, to reflect cash provided by or used in operating activities, in accordance with the indirect cash flow 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> -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_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSoldDepreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 allocation of cost of tangible asset over its useful life directly used in production of good and rendering of service.</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 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 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<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/2147482099/360-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSoldDepreciation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts 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 830<br> -SubTopic 230<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 principal payment on finance 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 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br><br>Reference 2: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-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_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_GainLossOnDispositionOfAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-5<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expenses incurred but not yet paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInDeferredIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 account that represents the temporary difference that results from Income or Loss that is recognized for accounting purposes but not for tax purposes and vice versa.</p></div>
<a href="javascript: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_IncreaseDecreaseInDeferredIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in obligation 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/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/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -SubTopic 20<br> -Topic 842<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_IncreaseDecreaseInOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_IncreaseDecreaseInOtherCurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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_IncreaseDecreaseInOtherCurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInOtherNoncurrentAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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/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_IncreaseDecreaseInOtherNoncurrentAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInPrepaidExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_IncreaseDecreaseInPrepaidExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-24<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsOfDividendsCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PaymentsOfDividendsCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_ProceedsFromSaleOfProductiveAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 property, plant and equipment (capital expenditures), software, and other intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_ProceedsFromSaleOfProductiveAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statements of Stockholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Paid-in Capital [Member]</div></th>
<th class="th"><div>Treasury Stock [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>Accumulated Other Comprehensive Income (Loss) [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">$ 3,981<span></span>
</td>
<td class="num">$ (9,773)<span></span>
</td>
<td class="nump">$ 63,659<span></span>
</td>
<td class="num">$ (1,544)<span></span>
</td>
<td class="nump">$ 56,346<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_SharesIssued', window );">Balance (in shares) at Dec. 31, 2023</a></td>
<td class="nump">8,399,245<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 [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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">197<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">197<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross', window );">Vesting of restricted stock units</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross', window );">Vesting of restricted stock units (in shares)</a></td>
<td class="nump">2,727<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">525<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">525<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments, net of tax</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">170<span></span>
</td>
<td class="nump">170<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2024</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">4,178<span></span>
</td>
<td class="num">(9,773)<span></span>
</td>
<td class="nump">64,184<span></span>
</td>
<td class="num">(1,374)<span></span>
</td>
<td class="nump">57,238<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_SharesIssued', window );">Balance (in shares) at Mar. 31, 2024</a></td>
<td class="nump">8,401,972<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Balance at Dec. 31, 2024</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">4,529<span></span>
</td>
<td class="num">(9,773)<span></span>
</td>
<td class="nump">64,486<span></span>
</td>
<td class="num">(2,112)<span></span>
</td>
<td class="nump">57,153<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_SharesIssued', window );">Balance (in shares) at Dec. 31, 2024</a></td>
<td class="nump">8,496,581<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 [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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">93<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">93<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross', window );">Vesting of restricted stock units</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross', window );">Vesting of restricted stock units (in shares)</a></td>
<td class="nump">15,973<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">12,676<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">12,676<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsCommonStockCash', window );">Dividend Paid</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(12,745)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(12,745)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustments, net of tax</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(288)<span></span>
</td>
<td class="num">(288)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Balance at Mar. 31, 2025</a></td>
<td class="nump">$ 23<span></span>
</td>
<td class="nump">$ 4,622<span></span>
</td>
<td class="num">$ (9,773)<span></span>
</td>
<td class="nump">$ 64,417<span></span>
</td>
<td class="num">$ (2,400)<span></span>
</td>
<td class="nump">$ 56,889<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_SharesIssued', window );">Balance (in shares) at Mar. 31, 2025</a></td>
<td class="nump">8,512,554<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481089/718-20-55-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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsCommonStockCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript: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 10A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482790/220-10-45-10A<br><br>Reference 2: 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(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now 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> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesIssued</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards.</p></div>
<a href="javascript: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 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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueRestrictedStockAwardGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 value of stock related to Restricted Stock Awards 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://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_StockIssuedDuringPeriodValueRestrictedStockAwardGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock', window );">BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">1.&#160; BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Tandy Leather Factory, Inc. (&#8220;TLF,&#8221; &#8220;we,&#8221; &#8220;our,&#8221; &#8220;us,&#8221; &#8220;the Company,&#8221; &#8220;Tandy,&#8221; or &#8220;Tandy Leather&#8221; mean Tandy Leather Factory, Inc., together with its subsidiaries)<span style="font-style: italic;"> </span>is one of the world&#8217;s largest specialty retailers of leather and leathercraft-related items. Founded in 1919 in Fort Worth, Texas, the Company introduced leathercrafting to millions of American and later
          Canadian and other international customers and has built a track record as the trusted source of quality leather, tools, hardware, supplies, kits and teaching materials for leatherworkers everywhere. Today, our mission remains to build on our
          legacy of inspiring the timeless art and trade of leatherworking.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">What differentiates Tandy from the competition is our high brand awareness and strong brand equity and loyalty, our network of retail stores that provides
          convenience, a high-touch customer service experience, a hub for the local leathercrafting community, and our 100-year heritage. We believe that this combination of qualities is unique to Tandy and gives the brand competitive advantages that are
          difficult for others to replicate.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We sell our products primarily through company-owned stores, through orders generated from our global websites, <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">and through direct account representatives in our commercial division</span>. We also manufacture leather lace, cut
          leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.&#160; We also offer production services to our business customers such as cutting (&#8220;clicking&#8221;), splitting, and some assembly. We maintain our principal
          offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">The Company currently
            operates a total of 101 retail stores as of March 31, 2025.&#160; There are 91 stores in the United States (&#8220;U.S.&#8221;), nine stores in
            Canada (1 was temporarily closed as of March 31, 2025 but has reopened as of our filing date), and one store in Spain.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company&#8217;s common shares currently trade on the Nasdaq Capital Market under the symbol &#8220;TLF.&#8221;</div>

<div><br/>
          </div>

<div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">We operate as a <span style="-sec-ix-hidden:Fact_52110c9064524c4faf89b8b6c0e18590"><span style="-sec-ix-hidden:Fact_31227776067142d8be0cbb10617f0d5d">single</span></span> segment and report on a consolidated basis. The Chief Operating Decision Maker (CODM), which is our CEO, uses both the net sales, cost of
            goods sold and net operating income to assess the Company&#8217;s performance and allocation of resources. All three measures are currently included on the face of our income statement.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">T<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">he accompanying unaudited Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;) for interim financial information and with the
            instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. In the opinion of management, the accompanying unaudited
            Consolidated Financial Statements for Tandy Leather Factory, Inc. and its consolidated subsidiaries contain all adjustments (consisting of normal recurring adjustments) necessary to present fairly our financial position as of March 31, 2025 and
            December 31, 2024, our results of operations and our cash flows for the three months ended March 31, 2025 and 2024, and our statements of stockholders&#8217; equity as of and for the three months ended March 31, 2025 and 2024. The preparation of
            financial statements in accordance with GAAP requires the use of estimates that affect the reported value of assets, liabilities, revenues and expenses. These estimates are based on historical experience and various other factors that are
            believed to be reasonable under the circumstances, the results of which form the basis for the Company&#8217;s conclusions. The Company continually evaluates the information used to make these estimates as the business and the economic environment
            changes. Actual results may differ from these estimates, and estimates are subject to change due to modifications in the underlying conditions or assumptions. These unaudited Consolidated Financial Statements should be read in conjunction with
            the audited Consolidated Financial Statements and accompanying notes included in our Form 10-K for the year ended December 31, 2024</span>.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Significant Accounting Policies</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Cash and cash equivalents</span></span>. The Company considers investments with a maturity, at time of purchase, of three months or
          less to be cash equivalents. All credit card, debit card and electronic transfer transactions pending settlement in less than seven days are classified as cash and cash equivalents.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Foreign currency translation and transactions</span></span>. Foreign currency translation adjustments arise from activities of our
          foreign subsidiaries. Results of operations are translated into U.S. dollars using the average exchange rates during the period, while assets and liabilities are translated using period-end exchange rates. Foreign currency translation adjustments
          of assets and liabilities are recorded in stockholders&#8217; equity and presented net of tax. Gains and losses resulting from foreign currency translations are <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">reported in the Consolidated Statements of Operations and Comprehensive Income under the caption &#8220;Foreign currency translation adjustments, net of tax&#8221; for all
            periods presented</span>.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Revenue Recognition.</span></span>&#160; Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at
          the store, (2) via web sales, and (3) sales of product directly to commercial customers. We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise to a customer. At the store, our performance
          obligation is met and revenue is recognized when a sales transaction occurs with a customer. When merchandise is shipped to a customer, our performance obligation is met, and revenue is recognized when control passes to the customer. Shipping
          terms are normally free on board (&#8220;FOB&#8221;) shipping point, and control passes when the merchandise is shipped to the customer. Sales tax and comparable foreign tax are excluded from net sales, while shipping charged to our customers is included in
          net sales. Net sales are based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.</div>

<div><br/></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">sales return allowance is based each year on historical customer return behavior and other known factors and reduces net sales and cost of sales, accordingly. The sales return allowance included in accrued expense and other
            liabilities was $0.2 million as of March 31, 2025, December 31, 2024, and January 1, 2024, respectively. The estimated value of
            merchandise expected to be returned included in other current assets was less than $0.1 million as of March 31, 2025, December
            31, 2024, and January 1, 2024</span>, <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">respectively</span>.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">record a gift card liability for the unfulfilled performance obligation on the date we issue a gift card to a customer. We record revenue and reduce the gift card liability as the customer redeems the gift card. In addition, for gift
            card breakage, we recognize a proportionate amount for the expected unredeemed gift cards over the expected customer redemption period, which is one year. As of March 31, 2025, December 31, 2024, and January 1, 2024, our gift card liability, included in accrued expenses and other liabilities, was $0.3 million, respectively. We recognized gift card revenue of $0.2
            million for the 3 months ended March 31, 2025 and 2024</span> respectively.</div>

<div><br/>
          </div>

<div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">For the three
            months ended March 31, 2025 and 2024, we recognized $0.1 million in net sales associated with gift cards.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Disaggregated Revenue.</span>&#160; </span><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:</span></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended March 31,</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2025</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">16,944</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,085</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Canada</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,850</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,897</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">Other </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">242</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">293</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net sales</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,036</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,275</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;">Geographic sales information is based on the location of the customer. As a percentage of our consolidated net sales, excluding Canada, our
            other international net sales were less than 2.0% for the three months ended March 31, 2025, and 2024, respectively.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;"> <br/>
            </span></span></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">Discounts</span></span><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><span style="text-decoration: underline;">.</span> <span style="font-style: normal;">We offer six classes of customer discounts: 1) Retail, 2) Military/First Responder, 3) Business, 4) Commercial, 5) Commercial Pro, and 6) Employees. There
              are no other classe of discounts, and any discounts given will fall into one of these six categories. Such discounts are not
              deemed to be variable consideration nor convey a material right to these customers since the discounted pricing they receive in a discount class is not incremental to others within the same class and there is no retrospective impact of such
              discounts. As a result, sales are reported after deduction of discounts at the point of sale. We do not pay slotting fees or make other payments to resellers.</span></span></div>

<div><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Operating</span></span><span style="text-decoration: underline;">&#160;</span><span style="font-style: italic;"><span style="text-decoration: underline;">expense</span></span><span style="text-decoration: underline;">s</span>. Operating expenses include all
          selling, general and administrative costs, including wages and benefits, rent and occupancy costs, depreciation, advertising, store operating expenses, outbound freight charges (to ship merchandise to customers), and corporate office costs.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Property and equipment, net of accumulated depreciation</span></span>. Property and equipment are stated at cost. Depreciation is
          computed using the straight-line method over the estimated useful lives of the assets, which are <span style="-sec-ix-hidden:Fact_18e8e79a5c4f4291950fe11f11bc251a">three</span> to ten years for equipment and machinery, <span style="-sec-ix-hidden:Fact_fbfeb37caee54873be8b0a4087eaa022">seven</span>
          to fifteen years for furniture and fixtures, five years for vehicles, and forty years for buildings and related improvements. Leasehold
          improvements are amortized over the lesser of the life of the lease or the useful life of the asset. Repairs and maintenance costs are expensed as incurred but are capitalized if&#160; the related cost extends the life of the assets.</div>

<div><br/>
          </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Inventory</span></span>. Inventory is stated at the lower of first-in, first-out (&#8220;FIFO&#8221;) cost or net realizable value, and FIFO
          layers are maintained at the location level. Finished goods held for sale include the cost of merchandise purchases, the costs to bring the merchandise to our Texas distribution center, warehousing and handling expenditures, and distributing and
          delivering merchandise to our stores. These costs include depreciation of long-lived assets utilized in acquiring, warehousing and distributing inventory. Manufacturing inventory including raw materials and work-in-process is valued on a first
          in, first out basis using full absorption accounting which includes material, labor, and other applicable manufacturing overhead. Carrying values of inventory are analyzed and, to the extent that the cost of inventory exceeds the net realizable
          value, provisions are made to reduce the carrying amount of the inventory.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We regularly review all inventory items to determine if there are (i) damaged goods (e.g., for leather, excessive scars or damage from ultra-violet (&#8220;UV&#8221;) light),
          (ii) items that need to be removed from our product line (e.g., slow-moving items, inability of a supplier to provide items of acceptable quality or quantity, and to maintain freshness in the product line) and (iii) pricing actions that need to
          be taken to adequately value our inventory at the lower of cost or net realizable value.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Since the determination of net realizable value of inventory involves both estimation and judgment with regard to market values and reasonable costs to sell,
          differences in these estimates could result in ultimate valuations that differ from the recorded asset.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The majority of inventory purchases and commitments are paid for in U.S. dollars in order to limit the Company&#8217;s exposure to foreign currency fluctuations. Goods
          shipped to us are recorded as inventory owned by us when the risk of loss shifts to us from the supplier.<span style="color: rgb(0, 0, 0);"><br/>
          </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;">(in thousands)</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">March 31, 2025</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">December 31, 2024</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">On hand:</div>
              </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Finished goods held for sale</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">30,433</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">31,022</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Raw materials and work in process</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="color: rgb(0, 0, 0);">1,251</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="color: rgb(0, 0, 0);">1,819</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Inventory in transit</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">2,666</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">2,715</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">TOTAL</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">34,350</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">35,556</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-style: italic;">Leases</span></span><span style="font-style: italic;">.</span> We lease real estate for our principal offices (including
          distribution center), retail store locations and may lease warehouse equipment for our Texas distribution center under long-term lease agreements. We determine if an arrangement is a lease at inception and recognize right-of-use (&#8220;ROU&#8221;) assets
          and lease liabilities at commencement date based on the present value of the lease payments over the lease term.<span style="color: rgb(0, 0, 0);"> We elected not to record leases with an initial term of 12 months or less on the balance sheet for
            all our asset classes.</span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For operating leases, the present value of our lease liabilities may include: (1) rental payments adjusted for inflation or market rates, and (2) lease terms with
          options to renew the lease or options to purchase leased equipment, when it is reasonably certain we will exercise such an option. The exercise of lease renewal or purchase option is generally at our discretion.&#160; Payments based on a change in an
          index or market rate are not considered in the determination of lease payments for purposes of measuring the related lease liability. We discount lease payments using our incremental borrowing rate based on information available as of the
          measurement date.</div>

<div><br/></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recognize rent expense related to our <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">operating leases assets on a straight-line basis over the lease term. Rent expense is recorded in operating expenses.<br/>
          </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For finance leases, our right-of-use assets are amortized on a straight-line basis over the earlier of the useful life of the right-of-use asset or the end of the
          lease term with rent expense recorded to operating expenses.&#160; We adjust the lease liability to reflect lease payments made during the period and interest incurred on the lease liability using the effective interest method. <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The interest expense incurred is recorded in interest expense on the Consolidated Statements of
            Operations and Comprehensive Income</span>.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term. We also perform interim reviews of our lease
          assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. None of our lease agreements contain contingent rental payments, material residual value guarantees or material
          restrictive covenants. We have no sublease agreements and no lease agreements in which we are named as a lessor.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Impairment of Long-Lived Assets</span></span>. We evaluate long-lived assets on a quarterly basis to identify events or changes in
          circumstances (&#8220;triggering events&#8221;) that indicate the carrying value of certain assets may not be recoverable. Upon the occurrence of a triggering event, ROU lease assets, property and equipment and definite-lived intangible assets are reviewed
          for impairment and an impairment loss is recorded in the period in which it is determined that the carrying amount of the assets is not recoverable. The determination of recoverability is made based upon the estimated undiscounted future net cash
          flows of assets grouped at the lowest level for which there are identifiable cash flows independent of the cash flows of other groups of assets with such cash flows to be realized over the estimated remaining useful life of the primary asset
          within the asset group. The Company determined the lowest level of identifiable cash flows that are independent of other asset groups to be primarily at the individual store level. If the estimated undiscounted future net cash flows for a given
          store are less than the carrying amount of the related store assets, an impairment loss is determined by comparing the estimated fair value with the carrying value of the related assets. The impairment loss is then allocated across the asset
          group&#8217;s major classifications which in this case are operating lease assets and property and equipment. Triggering events at the store level could include material declines in operational and financial performance or planned changes in the use of
          assets, such as store relocation or store closure. This evaluation requires management to make judgements relating to future cash flows, growth rates and economic and market conditions. The fair value of an asset group is estimated using a
          discounted cash flow valuation method.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Fair Value of Financial Instruments</span></span>. We measure fair value as an exit price, which is the amount that would be
          received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering such assumptions, accounting standards establish a three-tier fair value hierarchy, which prioritizes the
          inputs used in the valuation methodologies in measuring fair value:</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 1 &#8211; observable inputs that reflect quoted prices in active markets for identical assets or liabilities.</div>
                </td>

  </tr>


</table>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 2 &#8211; significant observable inputs other than quoted prices in active markets for similar assets and liabilities, such as quoted prices for identical or similar assets or liabilities in markets that
                    are not active; or other inputs that are observable or can be corroborated by observable market data.</div>
                </td>

  </tr>


</table>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 3 &#8211; significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.</div>
                </td>

  </tr>


</table>
          <div style="font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
          </div>

        </div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Classification of the financial asset or liability within the hierarchy is
          determined based on the lowest level input that is significant to the fair value measurement. </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Our principal financial instruments held consist of T-Bills as of March 31, 2025, which fall under level 1 of the fair value hierarchy and accounts receivable -
          trade, accounts payable - <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">trade, which fall under Level 3 of the fair
            value hierarchy</span>. As of March 31, 2025 and December 31, 2024, the carrying values of our financial instruments included in our Consolidated Balance Sheets approximated their fair values. There were no transfers into or out of Levels 1, 2 and 3 during the three months ended March 31, 2025 and 2024.</div>

<div><br/>
          </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Income Taxes</span></span>. Income taxes are estimated for each jurisdiction in which we operate. This involves assessing current
          tax exposure together with temporary differences resulting from differing treatment of items for tax and financial statement accounting purposes. Any resulting deferred tax assets are evaluated for recoverability based on estimated future taxable
          income. To the extent it is more-likely-than-not that all or a portion of a deferred tax asset will not be realized, a valuation allowance is recorded. Our evaluation regarding whether a valuation allowance is required or should be adjusted also
          considers, among other things, the nature, frequency, and severity of recent losses, forecasts of future profitability and the duration of statutory carryforward periods.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The
          effect on deferred taxes from a change in tax rate is recognized through continuing operations in the period that includes the enactment date of the change. Changes in tax laws and rates could affect recorded deferred tax assets and liabilities
          in the future.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">A tax benefit from an uncertain tax position may be recognized when it is more-likely-than-not that the position will be sustained upon examination, including
          resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more-likely-than-not recognition threshold to be recognized.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not
          previously available. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as
          increases or decreases to income tax expense and the effective tax rate in the period in which new information becomes available. We recognize interest and/or penalties related to all tax positions in income tax expense. To the extent that
          accrued interest and penalties do not ultimately become payable, amounts accrued will be reduced and reflected as a reduction of the overall income tax provision in the period that such determination is made.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We may be subject to periodic audits by the Internal Revenue Service and other taxing authorities. These audits may challenge certain of our tax positions, such as
          the timing and amount of deductions and allocation of taxable income to the various jurisdictions.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Stock-based compensation</span></span>. The Company&#8217;s stock-based compensation relates primarily to restricted stock unit (&#8220;RSU&#8221;)
          awards. Accounting guidance requires measurement and recognition of compensation expense at an amount equal to the grant date fair value. Compensation expense is recognized for service-based stock awards on a straight-line basis or ratably over
          the requisite service period, based on the closing price of the Company&#8217;s stock on the date of grant. The service-based awards typically vest ratably over the requisite service period, provided that the participant is employed on the vesting
          date. Compensation expense is reduced by actual forfeitures as they occur over the requisite service period of the awards.</div>

<div><br/></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Performance-based RSUs vest, if at all, upon the Company satisfying certain performance targets. The Company records compensation expense for awards with a
          performance condition when it is probable that the condition will be achieved. If the Company determines it is not probable a performance condition will be achieved, no compensation expense is recognized. If the Company changes its assessment in
          a subsequent period and concludes it is probable a performance condition will be achieved, the Company will recognize compensation expense ratably between the period of the change in assessment through the expected date of satisfying the
          performance condition for vesting. If the Company subsequently assesses that it is no longer probable that a performance condition will be achieved, the accumulated expense that has been previously recognized will be reversed. The compensation
          expense ultimately recognized, if any, related to performance-based awards will equal the grant date fair value based on the number of shares for which the performance condition has been satisfied. We issue shares from authorized shares upon the
          lapsing of vesting restrictions on RSUs. We do not use cash to settle equity instruments issued under stock-based compensation awards. <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The payments of the employees&#8217; tax liability for a portion of the vested shares are generally satisfied by withholding shares with a fair value equal to the tax
            liability</span>.</div>

<div><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Accounts Receivable - Trade and Expected Credit Losses</span></span>. Our receivables primarily arise from the sale of merchandise
          to customers that have applied for and been granted credit. Accounts receivable are stated at amounts due, net of an allowance. Accounts receivable are generally due within 30 days of invoicing. We estimate expected credit losses based on factors
          such as the composition of accounts receivable, the age of the accounts, historical bad debt experience, and our evaluation of the financial condition and past collection history of each customer. Management believes that the historical loss
          information it has compiled is a reasonable base on which to determine expected credit losses for trade receivables held at March 31, 2025, because the composition of the trade receivables at that date is consistent with that used in developing
          the historical credit-loss percentages (i.e., the similar risk characteristics of its customers and its credit practices have not changed significantly over time). Accordingly, the allowance for expected credit losses at March 31, 2025, December
          31, 2024, and January 1, 2024 each totaled less than $0.1 million.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"><span style="font-style: italic;"><span style="text-decoration: underline;">Other Intangible Assets</span></span>. Our intangible assets and related accumulated amortization relate to trademarks and
          copyrights that are definite-lived intangibles and are subject to amortization. The weighted average amortization period is 15 years
          for trademarks and copyrights. Amortization expense related to other intangible assets was less than $0.01 million during each of
          the 3 months ended March 31, 2025 and 2024. Based on the current amount of intangible assets subject to amortization, we estimate amortization expense to be less than $0.01 million annually over the next five years.<br/>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Comprehensive Income</span></span>. Comprehensive income includes net income or loss and certain other items that are recorded
          directly to stockholders&#8217; equity. The Company&#8217;s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.</div>
<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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>NOTES PAYABLE AND LONG-TERM DEBT<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureAbstract', window );"><strong>NOTES PAYABLE AND LONG-TERM DEBT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtDisclosureTextBlock', window );">NOTES PAYABLE AND LONG-TERM DEBT</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">2. NOTES PAYABLE AND LONG-TERM DEBT</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">On
          January 3, 2023, the Company entered into a credit agreement (the &#8220;Credit Agreement&#8221;) with JPMorgan Chase Bank, N.A. Under the Credit Agreement, the bank provides the Company a credit facility of up to $5,000,000 on standard terms and conditions, including affirmative and negative covenants set forth in the Credit Agreement.&#160; As security for the credit facility, the Company
          has pledged, as collateral, certain of its assets, including the Company&#8217;s cash in deposit accounts, inventory and equipment. The interest rate is based on CME term <span style="-sec-ix-hidden:Fact_b5db66dcfea64781bc8c2674442dccb3">SOFR</span> + <span style="-sec-ix-hidden:Fact_dec83329e0ed457cae86bd2da01523fc">210</span> basis points, and the maturity is 1 year.&#160; As of the date of this filing, no
          funds had been borrowed under this facility, and we are in compliance with all covenants.</span></div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">In the fourth quarter of 2024, the Company renewed the promissory note under its Credit Agreement with JPMorgan Chase Bank, N.A. through October 31, 2025 under the same terms as above. </span> </div>
<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>21
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAX<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>INCOME TAX [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">INCOME TAX</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">3.&#160; INCOME TAX</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Our effective tax rate for the three months ended March 31, 2025 and 2024 was 24.8% and 25.7%, respectively. Our effective tax rate differs from the federal
        statutory rate primarily due to U.S. state income tax expense, expenses that are nondeductible for tax purposes, the change in our valuation allowance associated with our deferred tax assets, and differences in tax rates in foreign jurisdictions.</div>
<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>22
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK-BASED COMPENSATION<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>STOCK-BASED COMPENSATION [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">STOCK-BASED COMPENSATION</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">4.&#160; STOCK-BASED COMPENSATION</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Tandy Leather Factory, Inc. 2013 Restricted Stock Plan (the &#8220;2013 Plan&#8221;) was adopted by our Board of Directors in January 2013 and approved by our stockholders in
        June 2013. The 2013 Plan initially reserved up to 300,000 shares for restricted stock and restricted stock unit (&#8220;RSU&#8221;) awards to our
        executive officers, non-employee directors and other key employees. In June 2020, our stockholders approved an increase to the plan reserve to 800,000
        shares of our common stock and extended the 2013 Plan to June 2023. Awards granted under the 2013 Plan may be service-based awards or performance-based awards and may be subject to a graded vesting schedule with a minimum vesting period of four years, unless otherwise determined by the Compensation Committee of the Board of Directors that administers the plan. All shares remaining
        ungranted under the 2013 Plan were canceled upon the adoption of the new 2023 Plan described below.<br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Tandy Leather Factory, Inc. 2023 Incentive Stock Plan (the &#8220;2023 Plan&#8221; and, together with the 2013 Plan, the &#8220;Plans&#8221;) was adopted by our Board of Directors in
          April 2023 and approved by our stockholders in June 2023.&#160; The 2023 Plan initially reserved up to <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">800,000</span> shares of our common stock for a variety of equity
          awards (including, but not limited to, RSUs, the only type of awards that have been granted to date) to our executive officers, non-employee directors and other key employees.&#160; In June 2023, as part of their annual director compensation, certain
          of our non-employee directors were granted a total of <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">12,993</span> service-based RSUs under the 2023 Plan, which will vest ratably over the next <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">four years</span>, subject to each participant&#8217;s continued service on the board as of each vesting date.&#160; In March 2024, the Company granted to certain employees a total of
          <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">59,649</span> RSUs under the 2023 Plan, which will vest ratably over the next <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">three years</span>, subject to the recipients&#8217; continued employment as of each vesting date. In June 2024, the Company granted <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">14,000</span>
          shares to various members of the Board of Directors, which will vest ratably over the next <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">four years</span>, subject to each participant&#8217;s continued service on the board
          as of each vesting date.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">A summary of the activity for restricted stock and RSU awards as of March 31, 2025 is presented below:</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Shares</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> (in thousands)</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Weighted Average </div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Share Price</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Balance, January 1, 2025</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">409</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.32</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Granted<sup>(1)</sup></div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">1000</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.61</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Forfeited</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">(308</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.26</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Vested</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">(16</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.36</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Balance, <span style="text-indent: 0pt;">March 31</span>, 2025</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">1,085</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">4.01</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div> <br/>
      </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 22.5pt; vertical-align: top; text-align: left;"><sup>(1)</sup><br/>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Grant of 900,000 shares pending approval of the Company&#8217;s stockholders at the 2025 annual meeting.</div>
                </td>

  </tr>


</table>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify;"> <span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">The
          Company&#8217;s stock-based compensation relates primarily to RSU awards. For these service-based awards, our stock-based compensation expense, included in operating expenses, was $0.1 million and $0.2 million for the three months ended March 31, 2025 and
          March 31, 2024 respectively. </span></div>

<div style="text-align: justify;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">As of March 31, 2025, there was unrecognized compensation cost related to non-vested, RSU awards of $0.6 million, which will be recognized in each of the following years (dollars in thousands):</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic; text-align: center;"><span style="font-style: normal; font-weight: bold;">Unrecognized Expense</span><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;">2025<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">399</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; width: 88%; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;">2026<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">185</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">2027<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">34<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">2028</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">5</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; width: 88%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"><br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">623</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We issue shares from authorized shares upon the lapsing of vesting restrictions on restricted stock and RSUs. For the three months ended March 31, 2025 and 2024, we
        issued 15,973 and 2,727
        shares, respectively, resulting from the vesting of RSUs.&#160; We do not use cash to settle equity instruments issued under stock-based compensation awards.<span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;">&#160;</span><span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;">The payment of the employees&#8217; tax liability for a portion of the vested shares may be satisfied by withholding shares with a fair value equal
          to the tax liability.</span></div>
<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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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)(1)<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> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 3: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<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 (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: 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)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: 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 (l)<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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>EARNINGS PER SHARE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">EARNINGS PER SHARE</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">5.&#160; EARNINGS PER SHARE</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Basic earnings per share (&#8220;EPS&#8221;) are computed based on the weighted average number of common shares outstanding during the period. Diluted EPS includes additional
        common shares that would have been outstanding if potential common shares with a dilutive effect, such as stock awards from the Company&#8217;s restricted stock plan, had been issued.&#160; Anti-dilutive securities represent potentially dilutive securities
        which are excluded from the computation of diluted EPS as their impact would be anti-dilutive.&#160; Diluted EPS is computed using the treasury stock method.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following table sets forth the computation of basic and diluted EPS for the three months ended March 31, 2025 and 2024:</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Three Months Ended March 31,</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"><span style="font-style: italic;">(in thousands, except share data)</span> <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2025</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; font-weight: bold;" valign="bottom">Numerator:</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Net income<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">12,676</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);"></div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">525</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Denominator:</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Basic weighted-average common shares outstanding</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,501,204</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,400,354</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 76%;" valign="bottom">
              <div style="margin-top: 0px; margin-bottom: 0px; text-align: left; text-indent: 9pt;">Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">9,460</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">5,108</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">Dilutive effect of service-based restricted stock awards granted to employees under the Plan<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">84,656</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">94,892</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Diluted weighted-average common shares outstanding</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,595,320</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,500,354</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">Basic earnings per share <br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">1.49</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">0.06</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">Diluted earnings per share<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">1.47</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">0.06</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>24
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>COMMITMENTS AND CONTINGENCIES<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract', window );"><strong>COMMITMENTS AND CONTINGENCIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">COMMITMENTS AND CONTINGENCIES</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">6.&#160; COMMITMENTS AND CONTINGENCIES</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">Legal Proceedings</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We are periodically involved in litigation that arises in the ordinary course of business and operations. There are no such matters pending that we expect to have a
          material impact on our financial position or operating results. Legal costs associated with the resolution of claims, lawsuits and other contingencies are expensed as incurred.</div>
<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>25
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract', window );"><strong>SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock', window );">SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</a></td>
<td class="text">
<div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;">7.&#160; SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">On August 8, 2022, the Board of Directors approved a new program to repurchase up to $5.0 million of the Company&#8217;s common stock between that date and August 31, 2024.&#160; As of August 31, 2024, the Company had purchased less than $10,000 of shares under this plan. <br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">On September 17, 2024, the Board of Directors approved&#160;the renewal of the stock repurchase plan and the Company was authorized to repurchase up to $5 million (at then-current market value) of the Company&#8217;s common stock in open-market transactions at prevailing market prices upon periodic instructions from the Board
              or an authorized sub-committee of the Board until September 30, 2026. As of March 31, 2025, $5.0 million remained available for
              repurchase under this new program.</span></div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 share repurchase program and share repurchases.</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;">tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract', window );"><strong>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock', window );">SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">8. SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company concluded the sale of our corporate headquarters, and the net proceeds of the sale is recorded on the face of our consolidated statements of operations
          and comprehensive income as Gain on disposal of Headquarter.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-size: 10pt; font-family: 'Times New Roman';">On January 22, 2025, the Company finalized the sale of its corporate headquarters and distribution
            facilities in Fort Worth, Texas for net proceeds of $24.9 million after deduction of commission and relevant closing fees. The total
            net book value disposed was $7.2 million resulting in a gain of $17.7 million as the result of the sale and this is included in &#8216;Other income on the face of our consolidated statements of operations and comprehensive income. The Company
            has elected to include all one-time move expenses in &#8216;Other income&#8217; as management deems these are not part of our normal operations.</span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%; border-spacing: 0;">


  <tr>

    <td colspan="4" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: #000000 solid 2px;" valign="bottom">
                <div style="text-align: center; font-weight: bold;">Sales and Disposal of Headquarter<span style="font-style: italic;"> (in thousands)</span></div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="text-align: left;">Net Proceeds</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div>$</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div>24,897</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left;">NBV of Headquarter Assets</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div>7,221<br/>
                </div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-weight: bold;">Net Gain</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="font-weight: bold;">17,676</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify;"><span style="font-family: 'Times New Roman'; font-size: 10pt; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;">On
              January 28, 2025, the Company also signed a 10-year lease for new corporate headquarters and distribution facilities in Benbrook
              that will be effective on September 1, 2025, Texas and the Company has the ability to renew the lease for an additional 10 years
              at market rate. We also signed a short term lease through lease through September 1, 2025 for our current facility that was evaluated as a sale leaseback. Due to the short term nature of the lease it was not recorded under ASC 842 in
              accordance with our policy of not recording short term leases. </span></div>

<div><span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"> </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
          </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The Company hired Johan Hedberg as its new Chief Executive Officer as of January 6, 2025.&#160; Prior to the hiring of Mr. Hedberg, Janet Carr resigned as Chief
            Executive Officer, effective January 3, 2025; she remained employed by the Company to assist with transition until March 31, 2025. <br/>
          </div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sales of corporate headquarters and new CEO employment.</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;">tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and cash equivalents</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Cash and cash equivalents</span></span>. The Company considers investments with a maturity, at time of purchase, of three months or
          less to be cash equivalents. All credit card, debit card and electronic transfer transactions pending settlement in less than seven days are classified as cash and cash equivalents.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign currency translation and transactions</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Foreign currency translation and transactions</span></span>. Foreign currency translation adjustments arise from activities of our
          foreign subsidiaries. Results of operations are translated into U.S. dollars using the average exchange rates during the period, while assets and liabilities are translated using period-end exchange rates. Foreign currency translation adjustments
          of assets and liabilities are recorded in stockholders&#8217; equity and presented net of tax. Gains and losses resulting from foreign currency translations are <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">reported in the Consolidated Statements of Operations and Comprehensive Income under the caption &#8220;Foreign currency translation adjustments, net of tax&#8221; for all
            periods presented</span>.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Revenue Recognition.</span></span>&#160; Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at
          the store, (2) via web sales, and (3) sales of product directly to commercial customers. We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise to a customer. At the store, our performance
          obligation is met and revenue is recognized when a sales transaction occurs with a customer. When merchandise is shipped to a customer, our performance obligation is met, and revenue is recognized when control passes to the customer. Shipping
          terms are normally free on board (&#8220;FOB&#8221;) shipping point, and control passes when the merchandise is shipped to the customer. Sales tax and comparable foreign tax are excluded from net sales, while shipping charged to our customers is included in
          net sales. Net sales are based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.</div>

<div><br/></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">sales return allowance is based each year on historical customer return behavior and other known factors and reduces net sales and cost of sales, accordingly. The sales return allowance included in accrued expense and other
            liabilities was $0.2 million as of March 31, 2025, December 31, 2024, and January 1, 2024, respectively. The estimated value of
            merchandise expected to be returned included in other current assets was less than $0.1 million as of March 31, 2025, December
            31, 2024, and January 1, 2024</span>, <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">respectively</span>.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">record a gift card liability for the unfulfilled performance obligation on the date we issue a gift card to a customer. We record revenue and reduce the gift card liability as the customer redeems the gift card. In addition, for gift
            card breakage, we recognize a proportionate amount for the expected unredeemed gift cards over the expected customer redemption period, which is one year. As of March 31, 2025, December 31, 2024, and January 1, 2024, our gift card liability, included in accrued expenses and other liabilities, was $0.3 million, respectively. We recognized gift card revenue of $0.2
            million for the 3 months ended March 31, 2025 and 2024</span> respectively.</div>

<div><br/>
          </div>

<div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">For the three
            months ended March 31, 2025 and 2024, we recognized $0.1 million in net sales associated with gift cards.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Disaggregated Revenue.</span>&#160; </span><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:</span></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended March 31,</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2025</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">16,944</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,085</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Canada</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,850</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,897</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">Other </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">242</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">293</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net sales</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,036</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,275</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;">Geographic sales information is based on the location of the customer. As a percentage of our consolidated net sales, excluding Canada, our
            other international net sales were less than 2.0% for the three months ended March 31, 2025, and 2024, respectively.</div>
<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_tlfa_RevenueRecognitionDiscountsPolicyTextBlock', window );">Discounts</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;">Discounts</span></span><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"><span style="text-decoration: underline;">.</span> <span style="font-style: normal;">We offer six classes of customer discounts: 1) Retail, 2) Military/First Responder, 3) Business, 4) Commercial, 5) Commercial Pro, and 6) Employees. There
              are no other classe of discounts, and any discounts given will fall into one of these six categories. Such discounts are not
              deemed to be variable consideration nor convey a material right to these customers since the discounted pricing they receive in a discount class is not incremental to others within the same class and there is no retrospective impact of such
              discounts. As a result, sales are reported after deduction of discounts at the point of sale. We do not pay slotting fees or make other payments to resellers.</span></span></div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock', window );">Operating expenses</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Operating</span></span><span style="text-decoration: underline;">&#160;</span><span style="font-style: italic;"><span style="text-decoration: underline;">expense</span></span><span style="text-decoration: underline;">s</span>. Operating expenses include all
          selling, general and administrative costs, including wages and benefits, rent and occupancy costs, depreciation, advertising, store operating expenses, outbound freight charges (to ship merchandise to customers), and corporate office costs.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property and equipment, net of accumulated depreciation</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Property and equipment, net of accumulated depreciation</span></span>. Property and equipment are stated at cost. Depreciation is
          computed using the straight-line method over the estimated useful lives of the assets, which are <span style="-sec-ix-hidden:Fact_18e8e79a5c4f4291950fe11f11bc251a">three</span> to ten years for equipment and machinery, <span style="-sec-ix-hidden:Fact_fbfeb37caee54873be8b0a4087eaa022">seven</span>
          to fifteen years for furniture and fixtures, five years for vehicles, and forty years for buildings and related improvements. Leasehold
          improvements are amortized over the lesser of the life of the lease or the useful life of the asset. Repairs and maintenance costs are expensed as incurred but are capitalized if&#160; the related cost extends the life of the assets.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryPolicyTextBlock', window );">Inventory</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Inventory</span></span>. Inventory is stated at the lower of first-in, first-out (&#8220;FIFO&#8221;) cost or net realizable value, and FIFO
          layers are maintained at the location level. Finished goods held for sale include the cost of merchandise purchases, the costs to bring the merchandise to our Texas distribution center, warehousing and handling expenditures, and distributing and
          delivering merchandise to our stores. These costs include depreciation of long-lived assets utilized in acquiring, warehousing and distributing inventory. Manufacturing inventory including raw materials and work-in-process is valued on a first
          in, first out basis using full absorption accounting which includes material, labor, and other applicable manufacturing overhead. Carrying values of inventory are analyzed and, to the extent that the cost of inventory exceeds the net realizable
          value, provisions are made to reduce the carrying amount of the inventory.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We regularly review all inventory items to determine if there are (i) damaged goods (e.g., for leather, excessive scars or damage from ultra-violet (&#8220;UV&#8221;) light),
          (ii) items that need to be removed from our product line (e.g., slow-moving items, inability of a supplier to provide items of acceptable quality or quantity, and to maintain freshness in the product line) and (iii) pricing actions that need to
          be taken to adequately value our inventory at the lower of cost or net realizable value.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Since the determination of net realizable value of inventory involves both estimation and judgment with regard to market values and reasonable costs to sell,
          differences in these estimates could result in ultimate valuations that differ from the recorded asset.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The majority of inventory purchases and commitments are paid for in U.S. dollars in order to limit the Company&#8217;s exposure to foreign currency fluctuations. Goods
          shipped to us are recorded as inventory owned by us when the risk of loss shifts to us from the supplier.<span style="color: rgb(0, 0, 0);"><br/>
          </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;">(in thousands)</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">March 31, 2025</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">December 31, 2024</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">On hand:</div>
              </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Finished goods held for sale</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">30,433</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">31,022</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Raw materials and work in process</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="color: rgb(0, 0, 0);">1,251</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="color: rgb(0, 0, 0);">1,819</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Inventory in transit</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">2,666</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">2,715</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">TOTAL</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">34,350</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">35,556</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeLeasesPolicyTextBlock', window );">Leases</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="text-decoration: underline;"><span style="font-style: italic;">Leases</span></span><span style="font-style: italic;">.</span> We lease real estate for our principal offices (including
          distribution center), retail store locations and may lease warehouse equipment for our Texas distribution center under long-term lease agreements. We determine if an arrangement is a lease at inception and recognize right-of-use (&#8220;ROU&#8221;) assets
          and lease liabilities at commencement date based on the present value of the lease payments over the lease term.<span style="color: rgb(0, 0, 0);"> We elected not to record leases with an initial term of 12 months or less on the balance sheet for
            all our asset classes.</span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For operating leases, the present value of our lease liabilities may include: (1) rental payments adjusted for inflation or market rates, and (2) lease terms with
          options to renew the lease or options to purchase leased equipment, when it is reasonably certain we will exercise such an option. The exercise of lease renewal or purchase option is generally at our discretion.&#160; Payments based on a change in an
          index or market rate are not considered in the determination of lease payments for purposes of measuring the related lease liability. We discount lease payments using our incremental borrowing rate based on information available as of the
          measurement date.</div>

<div><br/></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recognize rent expense related to our <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">operating leases assets on a straight-line basis over the lease term. Rent expense is recorded in operating expenses.<br/>
          </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">For finance leases, our right-of-use assets are amortized on a straight-line basis over the earlier of the useful life of the right-of-use asset or the end of the
          lease term with rent expense recorded to operating expenses.&#160; We adjust the lease liability to reflect lease payments made during the period and interest incurred on the lease liability using the effective interest method. <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The interest expense incurred is recorded in interest expense on the Consolidated Statements of
            Operations and Comprehensive Income</span>.</div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term. We also perform interim reviews of our lease
          assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. None of our lease agreements contain contingent rental payments, material residual value guarantees or material
          restrictive covenants. We have no sublease agreements and no lease agreements in which we are named as a lessor.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Impairment of Long-Lived Assets</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Impairment of Long-Lived Assets</span></span>. We evaluate long-lived assets on a quarterly basis to identify events or changes in
          circumstances (&#8220;triggering events&#8221;) that indicate the carrying value of certain assets may not be recoverable. Upon the occurrence of a triggering event, ROU lease assets, property and equipment and definite-lived intangible assets are reviewed
          for impairment and an impairment loss is recorded in the period in which it is determined that the carrying amount of the assets is not recoverable. The determination of recoverability is made based upon the estimated undiscounted future net cash
          flows of assets grouped at the lowest level for which there are identifiable cash flows independent of the cash flows of other groups of assets with such cash flows to be realized over the estimated remaining useful life of the primary asset
          within the asset group. The Company determined the lowest level of identifiable cash flows that are independent of other asset groups to be primarily at the individual store level. If the estimated undiscounted future net cash flows for a given
          store are less than the carrying amount of the related store assets, an impairment loss is determined by comparing the estimated fair value with the carrying value of the related assets. The impairment loss is then allocated across the asset
          group&#8217;s major classifications which in this case are operating lease assets and property and equipment. Triggering events at the store level could include material declines in operational and financial performance or planned changes in the use of
          assets, such as store relocation or store closure. This evaluation requires management to make judgements relating to future cash flows, growth rates and economic and market conditions. The fair value of an asset group is estimated using a
          discounted cash flow valuation method.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value of Financial Instruments</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Fair Value of Financial Instruments</span></span>. We measure fair value as an exit price, which is the amount that would be
          received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering such assumptions, accounting standards establish a three-tier fair value hierarchy, which prioritizes the
          inputs used in the valuation methodologies in measuring fair value:</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 1 &#8211; observable inputs that reflect quoted prices in active markets for identical assets or liabilities.</div>
                </td>

  </tr>


</table>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 2 &#8211; significant observable inputs other than quoted prices in active markets for similar assets and liabilities, such as quoted prices for identical or similar assets or liabilities in markets that
                    are not active; or other inputs that are observable or can be corroborated by observable market data.</div>
                </td>

  </tr>


</table>
        </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 36pt; vertical-align: top;">
                  <div style="margin-left: 18pt;"><span style="font-family: 'Times New Roman';">&#9679;</span></div>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify;">Level 3 &#8211; significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.</div>
                </td>

  </tr>


</table>
          <div style="font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
          </div>

        </div>

<div><span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;">Classification of the financial asset or liability within the hierarchy is
          determined based on the lowest level input that is significant to the fair value measurement. </span></div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Our principal financial instruments held consist of T-Bills as of March 31, 2025, which fall under level 1 of the fair value hierarchy and accounts receivable -
          trade, accounts payable - <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">trade, which fall under Level 3 of the fair
            value hierarchy</span>. As of March 31, 2025 and December 31, 2024, the carrying values of our financial instruments included in our Consolidated Balance Sheets approximated their fair values. There were no transfers into or out of Levels 1, 2 and 3 during the three months ended March 31, 2025 and 2024.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Income Taxes</span></span>. Income taxes are estimated for each jurisdiction in which we operate. This involves assessing current
          tax exposure together with temporary differences resulting from differing treatment of items for tax and financial statement accounting purposes. Any resulting deferred tax assets are evaluated for recoverability based on estimated future taxable
          income. To the extent it is more-likely-than-not that all or a portion of a deferred tax asset will not be realized, a valuation allowance is recorded. Our evaluation regarding whether a valuation allowance is required or should be adjusted also
          considers, among other things, the nature, frequency, and severity of recent losses, forecasts of future profitability and the duration of statutory carryforward periods.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The
          effect on deferred taxes from a change in tax rate is recognized through continuing operations in the period that includes the enactment date of the change. Changes in tax laws and rates could affect recorded deferred tax assets and liabilities
          in the future.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">A tax benefit from an uncertain tax position may be recognized when it is more-likely-than-not that the position will be sustained upon examination, including
          resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more-likely-than-not recognition threshold to be recognized.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not
          previously available. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as
          increases or decreases to income tax expense and the effective tax rate in the period in which new information becomes available. We recognize interest and/or penalties related to all tax positions in income tax expense. To the extent that
          accrued interest and penalties do not ultimately become payable, amounts accrued will be reduced and reflected as a reduction of the overall income tax provision in the period that such determination is made.</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">We may be subject to periodic audits by the Internal Revenue Service and other taxing authorities. These audits may challenge certain of our tax positions, such as
          the timing and amount of deductions and allocation of taxable income to the various jurisdictions.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-based compensation</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Stock-based compensation</span></span>. The Company&#8217;s stock-based compensation relates primarily to restricted stock unit (&#8220;RSU&#8221;)
          awards. Accounting guidance requires measurement and recognition of compensation expense at an amount equal to the grant date fair value. Compensation expense is recognized for service-based stock awards on a straight-line basis or ratably over
          the requisite service period, based on the closing price of the Company&#8217;s stock on the date of grant. The service-based awards typically vest ratably over the requisite service period, provided that the participant is employed on the vesting
          date. Compensation expense is reduced by actual forfeitures as they occur over the requisite service period of the awards.</div>

<div><br/></div>

<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Performance-based RSUs vest, if at all, upon the Company satisfying certain performance targets. The Company records compensation expense for awards with a
          performance condition when it is probable that the condition will be achieved. If the Company determines it is not probable a performance condition will be achieved, no compensation expense is recognized. If the Company changes its assessment in
          a subsequent period and concludes it is probable a performance condition will be achieved, the Company will recognize compensation expense ratably between the period of the change in assessment through the expected date of satisfying the
          performance condition for vesting. If the Company subsequently assesses that it is no longer probable that a performance condition will be achieved, the accumulated expense that has been previously recognized will be reversed. The compensation
          expense ultimately recognized, if any, related to performance-based awards will equal the grant date fair value based on the number of shares for which the performance condition has been satisfied. We issue shares from authorized shares upon the
          lapsing of vesting restrictions on RSUs. We do not use cash to settle equity instruments issued under stock-based compensation awards. <span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;">The payments of the employees&#8217; tax liability for a portion of the vested shares are generally satisfied by withholding shares with a fair value equal to the tax
            liability</span>.</div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditLossFinancialInstrumentPolicyTextBlock', window );">Accounts Receivable - Trade and Expected Credit Losses</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Accounts Receivable - Trade and Expected Credit Losses</span></span>. Our receivables primarily arise from the sale of merchandise
          to customers that have applied for and been granted credit. Accounts receivable are stated at amounts due, net of an allowance. Accounts receivable are generally due within 30 days of invoicing. We estimate expected credit losses based on factors
          such as the composition of accounts receivable, the age of the accounts, historical bad debt experience, and our evaluation of the financial condition and past collection history of each customer. Management believes that the historical loss
          information it has compiled is a reasonable base on which to determine expected credit losses for trade receivables held at March 31, 2025, because the composition of the trade receivables at that date is consistent with that used in developing
          the historical credit-loss percentages (i.e., the similar risk characteristics of its customers and its credit practices have not changed significantly over time). Accordingly, the allowance for expected credit losses at March 31, 2025, December
          31, 2024, and January 1, 2024 each totaled less than $0.1 million.</div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsFiniteLivedPolicy', window );">Other Intangible Assets</a></td>
<td class="text">
<div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"><span style="font-style: italic;"><span style="text-decoration: underline;">Other Intangible Assets</span></span>. Our intangible assets and related accumulated amortization relate to trademarks and
          copyrights that are definite-lived intangibles and are subject to amortization. The weighted average amortization period is 15 years
          for trademarks and copyrights. Amortization expense related to other intangible assets was less than $0.01 million during each of
          the 3 months ended March 31, 2025 and 2024. Based on the current amount of intangible assets subject to amortization, we estimate amortization expense to be less than $0.01 million annually over the next five years.<br/>
        </div>
<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomePolicyPolicyTextBlock', window );">Comprehensive Income (loss)</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"><span style="font-style: italic;"><span style="text-decoration: underline;">Comprehensive Income</span></span>. Comprehensive income includes net income or loss and certain other items that are recorded
          directly to stockholders&#8217; equity. The Company&#8217;s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.</div>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_RevenueRecognitionDiscountsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sales discounts.</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;">tlfa_RevenueRecognitionDiscountsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-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_CashAndCashEquivalentsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomePolicyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for comprehensive income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ComprehensiveIncomePolicyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditLossFinancialInstrumentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status.</p></div>
<a href="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 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.M.2.Q4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483530/326-20-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-14<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479391/326-20-30-5A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-3C<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 8A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479366/326-20-35-8A<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-3D<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-5<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479175/326-30-30-1B<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-3C<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-3A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-3D<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 13A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479148/326-30-35-13A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 30<br> -Paragraph 4A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479391/326-20-30-4A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479148/326-30-35-7A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-21<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-11<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479106/326-30-50-7<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditLossFinancialInstrumentPolicyTextBlock</td>
</tr>
<tr>
<td style="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_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 825<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-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_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="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 830<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/830/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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480091/360-10-S99-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 4<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482338/360-10-05-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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-20<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-25<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-03(h)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479886/946-10-S99-3<br><br>Reference 5: 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 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482525/740-10-45-28<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482765/220-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsFiniteLivedPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 finite-lived intangible assets. This accounting policy also might address: (1) the amortization method used; (2) the useful lives of such assets; and (3) how the entity assesses and measures impairment of such 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 235<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/2147483426/235-10-50-4<br><br>Reference 2: 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 3: 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><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 920<br> -SubTopic 350<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478609/920-350-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 920<br> -SubTopic 350<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478609/920-350-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 920<br> -SubTopic 350<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478609/920-350-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_IntangibleAssetsFiniteLivedPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 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 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483489/210-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 912<br> -SubTopic 330<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478411/912-330-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483080/330-10-50-4<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 270<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482989/270-10-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeLeasesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 leasing arrangement entered into by lessee.</p></div>
<a href="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 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-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_LesseeLeasesPolicyTextBlock</td>
</tr>
<tr>
<td style="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_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-360-50-6<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -SubTopic 360<br> -Topic 958<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477798/958-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_PropertyPlantAndEquipmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for revenue from contract with customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-19<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-18<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-18<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 20<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-20<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -SubTopic 10<br> -Topic 235<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483426/235-10-50-4<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 606<br> -Publisher FASB<br> -URI https://asc.fasb.org/606/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpensesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 inclusion of significant items in the selling, general and administrative (or similar) expense report caption.</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 720<br> -SubTopic 35<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483406/720-35-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_SellingGeneralAndAdministrativeExpensesPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<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 (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 3: 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 (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<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 (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: 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.C.Q3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 6: 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.D.1.Q5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 7: 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.D.3.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 8: 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.D.2.Q6)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 10: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: 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 (f)(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_ShareBasedCompensationOptionAndIncentivePlansPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingPoliciesAbstract', window );"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueTableTextBlock', window );">Disaggregated Revenue</a></td>
<td class="text"><span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);">In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:</span>
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"> <br/>
        </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"> </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Three Months Ended March 31,</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;">(in thousands)</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2025</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">2024</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">United States</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">16,944</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">17,085</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Canada</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,850</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">1,897</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">Other </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">242</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">293</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">Net sales</div>
              </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,036</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;">19,275</div>
              </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Inventory</a></td>
<td class="text">
<div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;">Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. </div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
        </div>

<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;">(in thousands)</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">March 31, 2025</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">December 31, 2024</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">On hand:</div>
              </td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Finished goods held for sale</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">30,433</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">31,022</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Raw materials and work in process</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="color: rgb(0, 0, 0);">1,251</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom">
                <div style="color: rgb(0, 0, 0);">1,819</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Inventory in transit</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">2,666</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0);">2,715</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
                <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">TOTAL</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">34,350</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom">
                <div style="color: rgb(0, 0, 0); font-weight: bold;">35,556</div>
              </td>

    <td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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>29
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK-BASED COMPENSATION (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>STOCK-BASED COMPENSATION [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock', window );">Activity of Restricted Stock and RSU Awards</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">A summary of the activity for restricted stock and RSU awards as of March 31, 2025 is presented below:</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Shares</div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"> (in thousands)</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Weighted Average </div>
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Share Price</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Balance, January 1, 2025</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">409</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.32</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Granted<sup>(1)</sup></div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">1000</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.61</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Forfeited</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">(308</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.26</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Vested</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">(16</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">)</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">4.36</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Balance, <span style="text-indent: 0pt;">March 31</span>, 2025</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">1,085</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">4.01</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>

<div> <br/>
      </div>

<div>
          <table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;">


  <tr>

    <td style="width: 22.5pt; vertical-align: top; text-align: left;"><sup>(1)</sup><br/>
                </td>

    <td style="width: auto; vertical-align: top;">
                  <div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">Grant of 900,000 shares pending approval of the Company&#8217;s stockholders at the 2025 annual meeting.</div>
                </td>

  </tr>


</table>
        </div>
<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock', window );">Non-vested, Service-based Awards</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">As of March 31, 2025, there was unrecognized compensation cost related to non-vested, RSU awards of $0.6 million, which will be recognized in each of the following years (dollars in thousands):</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic; text-align: center;"><span style="font-style: normal; font-weight: bold;">Unrecognized Expense</span><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;">2025<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">$ <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">399</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; width: 88%; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;">2026<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">185</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">2027<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">34<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">2028</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">5</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; text-align: left; width: 88%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"><br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0); font-weight: bold;">623</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock</td>
</tr>
<tr>
<td style="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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost not yet recognized and weighted-average period over which cost is expected to be recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (i)<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_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>EARNINGS PER SHARE [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Computation of Basic and Diluted EPS</a></td>
<td class="text">
<div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;">The following table sets forth the computation of basic and diluted EPS for the three months ended March 31, 2025 and 2024:</div>

<div style="font-family: 'Times New Roman'; font-size: 10pt;"><br/>
      </div>

<table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;">


  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"><br/>
              </div>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">Three Months Ended March 31,</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"><span style="font-style: italic;">(in thousands, except share data)</span> <br/>
            </td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2025</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom">
              <div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;">2024</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; font-weight: bold;" valign="bottom">Numerator:</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);">Net income<br/>
              </div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">12,676</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);"></div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">$</div>
            </td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">525</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;">Denominator:</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Basic weighted-average common shares outstanding</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,501,204</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,400,354</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 76%;" valign="bottom">
              <div style="margin-top: 0px; margin-bottom: 0px; text-align: left; text-indent: 9pt;">Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan</div>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">9,460</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">5,108</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom">Dilutive effect of service-based restricted stock awards granted to employees under the Plan<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">84,656</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">94,892</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">
              <div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);">Diluted weighted-average common shares outstanding</div>
            </td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,595,320</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
              <div style="color: rgb(0, 0, 0);">8,500,354</div>
            </td>

    <td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom">Basic earnings per share <br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">1.49</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom">0.06</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom">Diluted earnings per share<br/>
            </td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">1.47</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"></td>

    <td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"><br/>
            </td>

    <td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">0.06</td>

    <td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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>31
<FILENAME>R19.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Mar. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract', window );"><strong>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock', window );">Sale and Disposal of Headquarter</a></td>
<td class="text">
<table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%; border-spacing: 0;">


  <tr>

    <td colspan="4" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: #000000 solid 2px;" valign="bottom">
                <div style="text-align: center; font-weight: bold;">Sales and Disposal of Headquarter<span style="font-style: italic;"> (in thousands)</span></div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom;" valign="bottom">&#160;</td>

    <td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div style="text-align: left;">Net Proceeds</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div>$</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">
                <div>24,897</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">
                <div style="text-align: left;">NBV of Headquarter Assets</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom">
                <div>7,221<br/>
                </div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>

  <tr>

    <td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="text-align: left; font-weight: bold;">Net Gain</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="font-weight: bold;">$</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">
                <div style="font-weight: bold;">17,676</div>
              </td>

    <td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom">&#160;</td>

  </tr>


</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component.</p></div>
<a href="javascript: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 3<br> -SubTopic 10<br> -Topic 360<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483475/205-20-45-11<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-3A<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-4A<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-4B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5A<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5B<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5C<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-5D<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<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 11: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3A<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-20-50-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483499/205-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_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>R20.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Basis of Presentation (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>Store </div>
<div>Segment</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_tlfa_BusinessDescriptionAbstract', window );"><strong>Description of Business [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfStores', window );">Number of stores</a></td>
<td class="nump">101<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_tlfa_NumberOfStoresTemporarilyClosed', window );">Number of stores temporarily closed</a></td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of operating segments | Segment</a></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_NumberOfReportableSegments', window );">Number of reporting segments | Segment</a></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_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</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_tlfa_BusinessDescriptionAbstract', window );"><strong>Description of Business [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfStores', window );">Number of stores</a></td>
<td class="nump">91<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_CA', window );">Canada [Member]</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_tlfa_BusinessDescriptionAbstract', window );"><strong>Description of Business [Abstract]</strong></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_us-gaap_NumberOfStores', window );">Number of stores</a></td>
<td class="nump">9<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_ES', window );">Spain [Member]</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_tlfa_BusinessDescriptionAbstract', window );"><strong>Description of Business [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfStores', window );">Number of stores</a></td>
<td class="nump">1<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_BusinessDescriptionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_BusinessDescriptionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_tlfa_NumberOfStoresTemporarilyClosed">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stores closed on temporary 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;">tlfa_NumberOfStoresTemporarilyClosed</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<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 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_us-gaap_NumberOfStores">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 stores.</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_NumberOfStores</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_ES">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_ES</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>33
<FILENAME>R21.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition and Discounts (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue Recognition [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss', window );">Sales return allowance</a></td>
<td class="nump">$ 200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 200<span></span>
</td>
<td class="nump">$ 200<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_tlfa_GiftCardRedemptionPeriod', window );">Gift card redemption 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">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized', window );">Revenue recognized from change in deferred obligation balance</a></td>
<td class="nump">$ 200<span></span>
</td>
<td class="nump">$ 200<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_DeferredRevenueRevenueRecognized1', window );">Deferred revenue, recognized</a></td>
<td class="nump">100<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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregated Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Sales</a></td>
<td class="nump">19,036<span></span>
</td>
<td class="nump">19,275<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_BalanceSheetLocationAxis=tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember', window );">Accrued Expenses and Other Liabilities [Member]</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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue Recognition [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with customer liability</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">300<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States [Member]</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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregated Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Sales</a></td>
<td class="nump">16,944<span></span>
</td>
<td class="nump">17,085<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_srt_StatementGeographicalAxis=country_CA', window );">Canada [Member]</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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregated Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Sales</a></td>
<td class="nump">1,850<span></span>
</td>
<td class="nump">1,897<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_srt_StatementGeographicalAxis=tlfa_OtherCountriesMember', window );">Other [Member]</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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregated Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Sales</a></td>
<td class="nump">242<span></span>
</td>
<td class="nump">$ 293<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue Recognition [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_tlfa_InventoryMerchandiseExpectedToBeReturned', window );">Estimate of merchandise expected to be returned</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="nump">$ 100<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | All Other Countries [Member] | Geographic Concentration Risk [Member] | Sales [Member]</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_DisaggregationOfRevenueAbstract', window );"><strong>Disaggregated Revenue [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Revenue percentage</a></td>
<td class="nump">2.00%<span></span>
</td>
<td class="nump">2.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_tlfa_GiftCardRedemptionPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expected customer gift card redemption period, 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;">tlfa_GiftCardRedemptionPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_tlfa_InventoryMerchandiseExpectedToBeReturned">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount of merchandise or supplies to which the entity expected returns as of balance sheet date.</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;">tlfa_InventoryMerchandiseExpectedToBeReturned</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss for 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/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479344/326-20-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-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_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479837/606-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_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiabilityRevenueRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiabilityRevenueRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredRevenueRevenueRecognized1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of revenue recognized that was previously reported as deferred or unearned revenue.</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_DeferredRevenueRevenueRecognized1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DisaggregationOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisaggregationOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-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_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_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_BalanceSheetLocationAxis=tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BalanceSheetLocationAxis=tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_CA">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_CA</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=tlfa_OtherCountriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=tlfa_OtherCountriesMember</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_StatementGeographicalAxis=tlfa_AllOtherCountriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=tlfa_AllOtherCountriesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_GeographicConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>R22.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>Discount</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_tlfa_DiscountsAbstract', window );"><strong>Discounts [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_NumberOfClassesOfCustomerDiscounts', window );">Number of classes of customer discounts</a></td>
<td class="nump">6<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_DiscountsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_DiscountsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_tlfa_NumberOfClassesOfCustomerDiscounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 classes of customer discounts.</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;">tlfa_NumberOfClassesOfCustomerDiscounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>R23.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Equipment and Machinery [Member] | Minimum [Member]</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_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property and Equipment, Net of Accumulated Depreciation [Abstract]</strong></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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of assets</a></td>
<td class="text">3 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember', window );">Equipment and Machinery [Member] | Maximum [Member]</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_us-gaap_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property and Equipment, Net of Accumulated Depreciation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of assets</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member] | Minimum [Member]</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_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property and Equipment, Net of Accumulated Depreciation [Abstract]</strong></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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of assets</a></td>
<td class="text">7 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember', window );">Furniture and Fixtures [Member] | Maximum [Member]</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_us-gaap_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property and Equipment, Net of Accumulated Depreciation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of assets</a></td>
<td class="text">15 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_VehiclesMember', window );">Vehicles [Member]</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_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property and Equipment, Net of Accumulated Depreciation [Abstract]</strong></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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of assets</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Buildings and Related Improvements [Member]</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_us-gaap_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property and Equipment, Net of Accumulated Depreciation [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Estimated useful lives of assets</a></td>
<td class="text">40 years<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_PropertyPlantAndEquipmentNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentNetAbstract</td>
</tr>
<tr>
<td style="padding-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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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_MachineryAndEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_MachineryAndEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FurnitureAndFixturesMember</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_VehiclesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_VehiclesMember</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_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_BuildingAndBuildingImprovementsMember</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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Inventory (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNetAbstract', window );"><strong>Inventory on-hand [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished goods held for sale</a></td>
<td class="nump">$ 30,433<span></span>
</td>
<td class="nump">$ 31,022<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessAndRawMaterials', window );">Raw materials and work in process</a></td>
<td class="nump">1,251<span></span>
</td>
<td class="nump">1,819<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherInventoryInTransit', window );">Inventory in transit</a></td>
<td class="nump">2,666<span></span>
</td>
<td class="nump">2,715<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_InventoryNet', window );">Total inventory</a></td>
<td class="nump">$ 34,350<span></span>
</td>
<td class="nump">$ 35,556<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_InventoryWorkInProcessAndRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 carrying amount as of the balance sheet date of items held by the entity which are partially completed at the time of measurement and unprocessed items that will go through the production process and become part of the final product. Includes supplies used directly or indirectly in the manufacturing or production process. This element may be used when the reporting entity combines work in process and raw materials into an aggregate amount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryWorkInProcessAndRawMaterials</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_OtherInventoryInTransit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount of merchandise or supplies to which the entity holds the title but does not hold physical possession because the goods are currently being transported.</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))<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_OtherInventoryInTransit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>37
<FILENAME>R25.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_FairValueOfFinancialInstrumentsAbstract', window );"><strong>Fair Value of Financial Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet', window );">Transfers into (out of) Level 3</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_FairValueOfFinancialInstrumentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_FairValueOfFinancialInstrumentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 transfer of financial instrument classified as an asset into (out of) level 3 of the fair value hierarchy.</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 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<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 (c)(3)<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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>38
<FILENAME>R26.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_AccountsReceivableAndExpectedCreditLossesAbstract', window );"><strong>Accounts Receivable and Expected Credit Losses [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivable', window );">Allowance for expected credit losses</a></td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.1<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_AccountsReceivableAndExpectedCreditLossesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_AccountsReceivableAndExpectedCreditLossesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_AllowanceForDoubtfulAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable.</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 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<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 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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481962/310-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479319/326-20-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_AllowanceForDoubtfulAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>39
<FILENAME>R27.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>Intangible Assets [Abstract]</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_AmortizationOfIntangibleAssets', window );">Amortization expenses</a></td>
<td class="nump">$ 10<span></span>
</td>
<td class="nump">$ 10<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear', window );">Amortization expense, 2025</a></td>
<td class="nump">10<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Amortization expense, 2026</a></td>
<td class="nump">10<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Amortization expense, 2027</a></td>
<td class="nump">10<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Amortization expense, 2028</a></td>
<td class="nump">10<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Amortization expense, 2029</a></td>
<td class="nump">$ 10<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_IntellectualPropertyMember', window );">Trademarks/Copyrights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNetAbstract', window );"><strong>Intangible Assets [Abstract]</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_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife', window );">Weighted average amortization period</a></td>
<td class="text">15 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amortization period of finite-lived intangible assets acquired either individually or as part of a group of 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 350<br> -SubTopic 30<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/2147482665/350-30-50-1<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife</td>
</tr>
<tr>
<td style="padding-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_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_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_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_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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_IntellectualPropertyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IntellectualPropertyMember</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>40
<FILENAME>R28.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>NOTES PAYABLE AND LONG-TERM DEBT (Details) - JP Morgan Chase Bank, N.A. [Member] - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 03, 2023</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentsAbstract', window );"><strong>Debt Instruments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="nump">$ 5,000,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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis points interest rate</a></td>
<td class="nump">2.10%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration', window );">Debt Instrument, Variable Interest Rate, Type [Extensible Enumeration]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">tlfa:TermSecuredOvernightFinancingRateSOFRRateMember<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Maturity period</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromLinesOfCredit', window );">Line of credit facility, funds borrowed</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-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_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 type of variable interest rate on debt instrument.</p></div>
<a href="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 942<br> -SubTopic 470<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<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_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration</td>
</tr>
<tr>
<td style="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>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DebtInstrumentsAbstract</td>
</tr>
<tr>
<td style="padding-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_ProceedsFromLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</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 1<br> -Subparagraph (SX 210.4-08(f))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 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_ProceedsFromLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_LineOfCreditFacilityAxis=tlfa_JPMorganChaseBankNAMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LineOfCreditFacilityAxis=tlfa_JPMorganChaseBankNAMember</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>41
<FILENAME>R29.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>INCOME TAX (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureAbstract', window );"><strong>INCOME TAX [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">24.80%<span></span>
</td>
<td class="nump">25.70%<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_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>R30.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK-BASED COMPENSATION, 2013 and 2023 Restricted Stock Plans (Details) - shares<br></strong></div></th>
<th class="th" colspan="3">1 Months Ended</th>
<th class="th" colspan="1">3 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>Mar. 31, 2024</div></th>
<th class="th"><div>Jun. 30, 2023</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Jan. 31, 2013</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_PlanNameAxis=tlfa_TwoThousandAndThirteenRestrictedStockPlanMember', window );">2013 Restricted Stock Plan [Member] | Restricted Stock Units [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Number of common shares reserved for issuance (in shares)</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">800,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=tlfa_TwoThousandAndThirteenRestrictedStockPlanMember', window );">2013 Restricted Stock Plan [Member] | Restricted Stock Units [Member] | Maximum [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Number of common shares reserved for issuance (in shares)</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">300,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_PlanNameAxis=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember', window );">2023 Restricted Stock Plan [Member] | Minimum [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 from grant date</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">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_PlanNameAxis=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember', window );">2023 Restricted Stock Plan [Member] | Restricted Stock Units [Member] | Maximum [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 );">Number of common shares reserved for issuance (in shares)</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">800,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_PlanNameAxis=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember', window );">2023 Restricted Stock Plan [Member] | Restricted Stock Units [Member] | Key Employees [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 from grant date</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">3 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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number of restricted stock units granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">59,649<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_PlanNameAxis=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember', window );">2023 Restricted Stock Plan [Member] | Restricted Stock Units [Member] | Board of Directors [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 from grant date</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">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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number of restricted stock units granted (in shares)</a></td>
<td class="nump">14,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>
<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=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember', window );">2023 Restricted Stock Plan [Member] | Service-Based Restricted Stock Units [Member] | Non-Employee Directors [Member]</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract', window );"><strong>Restricted Stock Plan [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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 from grant date</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">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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number of restricted stock units granted (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,993<span></span>
</td>
<td class="text">&#160;<span></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_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_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_PlanNameAxis=tlfa_TwoThousandAndThirteenRestrictedStockPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tlfa_TwoThousandAndThirteenRestrictedStockPlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember</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_TitleOfIndividualAxis=us-gaap_ShareBasedPaymentArrangementEmployeeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=us-gaap_ShareBasedPaymentArrangementEmployeeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=srt_DirectorMember</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=tlfa_ServicedBasedRestrictedStockUnitsRSUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tlfa_ServicedBasedRestrictedStockUnitsRSUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=tlfa_NonEmployeeDirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=tlfa_NonEmployeeDirectorMember</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>43
<FILENAME>R31.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK-BASED COMPENSATION, Summary of Activity for Non-vested Restricted Stock Unit Awards (Details)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr><th class="th" colspan="2">
<div>Mar. 31, 2025 </div>
<div>$ / shares </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward', window );"><strong>Shares [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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_tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval', window );">Grants pending approval (in shares)</a></td>
<td class="nump">900,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></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=tlfa_RestrictedStockAndRestrictedStockUnitsMember', window );">Restricted Stock and RSU [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<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>Shares [Roll Forward]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<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 );">Balance (in shares)</a></td>
<td class="nump">409,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted (in shares)</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited (in shares)</a></td>
<td class="num">(308,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="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)</a></td>
<td class="num">(16,000)<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<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 );">Balance (in shares)</a></td>
<td class="nump">1,085,000<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<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 Share Price [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 4.32<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="ro">
<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="nump">4.61<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"><sup>[1]</sup></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue', window );">Forfeited (in dollars per share) | $ / shares</a></td>
<td class="nump">4.26<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="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="nump">4.36<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue', window );">Balance (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 4.01<span></span>
</td>
<td class="fn" style="border-bottom: 0px;"></td>
</tr>
<tr><td colspan="3"></td></tr>
<tr><td colspan="3"><table class="outerFootnotes" width="100%"><tr class="outerFootnote">
<td style="vertical-align: top; width: 12pt;" valign="top">[1]</td>
<td style="vertical-align: top;" valign="top">Grant of 900,000 shares pending approval of the Company&#8217;s stockholders at the 2025 annual meeting.</td>
</tr></table></td></tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pending approval 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_AwardTypeAxis=tlfa_RestrictedStockAndRestrictedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tlfa_RestrictedStockAndRestrictedStockUnitsMember</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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STOCK-BASED COMPENSATION, Non-vested Service-based Restricted Stock Unit Awards (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember', window );">Restricted Stock Units (RSUs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>Share-based Compensation Expense [Abstract]</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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross', window );">Number of shares issued from vesting of restricted stock (in shares)</a></td>
<td class="nump">15,973<span></span>
</td>
<td class="nump">2,727<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=tlfa_ServicedBasedRestrictedStockUnitsRSUsMember', window );">Service-Based Restricted Stock Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationAbstract', window );"><strong>Share-based Compensation Expense [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="nump">$ 200<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_tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths', window );">2025</a></td>
<td class="nump">399<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_tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears', window );">2026</a></td>
<td class="nump">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_tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears', window );">2027</a></td>
<td class="nump">34<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_tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears', window );">2028</a></td>
<td class="nump">5<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized Expense</a></td>
<td class="nump">$ 623<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_tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized cost of unvested share-based compensation awards in excess of one year due in the fourth fiscal year following the latest fiscal year.</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;">tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized cost of unvested share-based compensation awards in excess of one year due in the third fiscal year following the latest fiscal year.</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;">tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized cost of unvested share-based compensation awards due in excess of one year due in the second fiscal year following the latest fiscal year.</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;">tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Unrecognized cost of unvested share-based compensation awards in excess of one year due in the next fiscal year following the latest fiscal year.</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;">tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards.</p></div>
<a href="javascript: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 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_StockIssuedDuringPeriodSharesRestrictedStockAwardGross</td>
</tr>
<tr>
<td style="padding-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_RestrictedStockUnitsRSUMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=tlfa_ServicedBasedRestrictedStockUnitsRSUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tlfa_ServicedBasedRestrictedStockUnitsRSUsMember</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>45
<FILENAME>R33.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>EARNINGS PER SHARE (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLossAbstract', window );"><strong>Numerator [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 12,676<span></span>
</td>
<td class="nump">$ 525<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Denominator [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted-average common shares outstanding (in shares)</a></td>
<td class="nump">8,501,204<span></span>
</td>
<td class="nump">8,400,354<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted-average common shares outstanding (in shares)</a></td>
<td class="nump">8,595,320<span></span>
</td>
<td class="nump">8,500,354<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per share (in dollars per share)</a></td>
<td class="nump">$ 1.49<span></span>
</td>
<td class="nump">$ 0.06<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per share (in dollars per share)</a></td>
<td class="nump">$ 1.47<span></span>
</td>
<td class="nump">$ 0.06<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | Board of Directors [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Denominator [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive effect of service-based restricted stock awards granted under the Plan (in shares)</a></td>
<td class="nump">9,460<span></span>
</td>
<td class="nump">5,108<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [Member] | Employees [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Denominator [Abstract]</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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive effect of service-based restricted stock awards granted under the Plan (in shares)</a></td>
<td class="nump">84,656<span></span>
</td>
<td class="nump">94,892<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_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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="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 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480454/718-10-45-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 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-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_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_NetIncomeLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetIncomeLossAbstract</td>
</tr>
<tr>
<td style="padding-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_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_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-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_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_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=srt_DirectorMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=srt_DirectorMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_TitleOfIndividualAxis=us-gaap_ShareBasedPaymentArrangementEmployeeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_TitleOfIndividualAxis=us-gaap_ShareBasedPaymentArrangementEmployeeMember</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>46
<FILENAME>R34.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Sep. 17, 2024</div></th>
<th class="th"><div>Aug. 31, 2024</div></th>
<th class="th"><div>Aug. 08, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_StockRepurchaseProgramAbstract', window );"><strong>Share Repurchase Program and Share Repurchases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonValue', window );">Share repurchase amount</a></td>
<td class="nump">$ 9,773,000<span></span>
</td>
<td class="nump">$ 9,773,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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1', window );">Remaining repurchase of common stock</a></td>
<td class="nump">$ 5,000,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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Share Repurchase Program [Member]</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_tlfa_StockRepurchaseProgramAbstract', window );"><strong>Share Repurchase Program and Share Repurchases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StockRepurchaseProgramAuthorizedAmount1', window );">Repurchase of common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonValue', window );">Share repurchase 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="nump">$ 10,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_srt_StockRepurchaseProgramAuthorizedAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership.</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 505<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-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;">srt_StockRepurchaseProgramAuthorizedAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>srt_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tlfa_StockRepurchaseProgramAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_StockRepurchaseProgramAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount remaining authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership.</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_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TreasuryStockCommonValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481520/505-30-50-4<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481549/505-30-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockCommonValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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_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_ShareRepurchaseProgramAxis=tlfa_ShareRepurchaseProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ShareRepurchaseProgramAxis=tlfa_ShareRepurchaseProgramMember</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>47
<FILENAME>R35.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_SalesAndDisposalOfHeadquarterAbstract', window );"><strong>Sales and Disposal of Headquarter [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleOfProductiveAssets', window );">Net Proceeds</a></td>
<td class="nump">$ 24,897<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tlfa_HeadquarterAssetsNetBookValue', window );">NBV of Headquarter Assets</a></td>
<td class="nump">7,221<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnDispositionOfAssets', window );">Net Gain</a></td>
<td class="nump">$ 17,676<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_LesseeOperatingLeaseTermOfContract', window );">Lease, term of contract</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseRenewalTerm', window );">Lease, renewal term</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tlfa_HeadquarterAssetsNetBookValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 book value of the asset(s) sold in connection with the sale of the headquarter 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;">tlfa_HeadquarterAssetsNetBookValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tlfa_SalesAndDisposalOfHeadquarterAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">tlfa_SalesAndDisposalOfHeadquarterAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tlfa_</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_GainLossOnDispositionOfAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482130/360-10-45-5<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482099/360-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnDispositionOfAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseRenewalTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 renewal, 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_LesseeOperatingLeaseRenewalTerm</td>
</tr>
<tr>
<td style="padding-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_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_us-gaap_ProceedsFromSaleOfProductiveAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 property, plant and equipment (capital expenditures), software, and other intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_ProceedsFromSaleOfProductiveAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>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>EXCEL
<SEQUENCE>48
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( .V!K%I&QTU(E0   ,T    0    9&]C4')O<',O87!P+GAM
M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ)
M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$,
M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2<?J]P<"A#G>B4^BQ-+.9<K!?^+
M4\L54Y[FRF_\9 6_![H74$L#!!0    ( .V!K%K?5A=)\0   "L"   1
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
M]#5ZEJ$5>8_ W<2*=0RCQ"JCQ' KL\TAN7GQECQ>B%H;O$?H?C2]'ED7O/#
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
MM+Y1?%&^A+GG2O%Y>3ECL(L2V@">/W"@],V-?J]3O<<;_@-02P,$%     @
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
M"6T _]?5V^N+;J"Y_9O]"U!+ P04    " #M@:Q:J4&!ISX&  ",&P  &
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
M.B92=\J55CD\3[0[177T4]THOK6G)_=<*5[8RPW5 Z0P OK_*\[5\XUY07,
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
M')L^]SZRG6YMD!9A)EDH3*==;-S>VX^]\]CM_\+CS.3[6TAM06'%T$%Z<I0
MQ3D4#6?:T/MSXWB2A&7-HQO)!_!^98S;&CY!_V<P^PM02P,$%     @ [8&L
M6ID@>0-T!@  ?P\  !D   !X;"]W;W)K<VAE971S+W-H965T,3 N>&ULE5?=
M<],X$'_W7[$3&*;,A,1VTK3IUTQ:RAW< 1U:X.'F'A1[D^B0+2/)37-__>U*
MMIN6M@<OB;72?OSV4SI::_/-KA =W!2JM,>]E7/5P7!HLQ46P@YTA27M++0I
MA*.E60YM95#DGJE0PS2.)\-"R+)W<N1I%^;D2-=.R1(O#-BZ*(39G*+2Z^->
MTFL)G^1RY9@P/#FJQ!(OT7VN+@RMAIV47!986JE+,+@X[LV2@],QG_<'ODA<
MVZUO8"1SK;_QXFU^W(O9(%28.98@Z.\:SU I%D1F?&]D]CJ5S+C]W4I_X[$3
MEKFP>*;55YF[U7%OOP<Y+D2MW">]_AT;/+LL+]/*^E]8A[.C20^RVCI=-,QD
M02'+\"]N&C]L,>S'CS"D#4/J[0Z*O)6OA1,G1T:OP?!IDL8?'JKG)N-DR4&Y
M=(9V)?&YD\NKCV=_O#J=79Z_AK./[R_./US.KMY^_' T="2=SPRS1M)ID)0^
M(FD$[W7I5A;.RQSSN_Q#LJHS+6U-.TV?%/A>F &,DCZD<;K[A+Q1!W7DY8U^
M$2K\-9M;9R@__GX(=1 Z?E@HU\R!K42&QSTJ"HOF&GLG+YXED_CP"9/'G<GC
MIZ3_4G2>EC0>P*/XKU8(5Z+,-_ G"K=" V_(&=IL^O"VS ;D_V0$GY!\)#.'
M.5PZG7V#"R5*V*'C\.+9?IK&A_X84_TZ.7P):V%!Y+IBIOD&=&W@5 N3@U[
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
M84G/*-1.@/8+10U@.W$&]@^SV7]02P,$%     @ [8&L6D">V3K5 @  . 8
M !D   !X;"]W;W)K<VAE971S+W-H965T,3(N>&ULG57=;]HP$'_?7W'*I#U-
MA +MJ@Z0@'9;I4&KMEL?ICV8Y"!6'3OS74C[W^_L .ND%FE[(?ZXW\?9OF/8
M./] !2+#8VDLC9*"N3I+4\H*+!5U7(56=E;.EXIEZM<I51Y5'D&E27O=[DE:
M*FV3\3"N7?OQT-5LM,5K#U27I?)/4S2N&25'R6[A1J\+#@OI>%BI-=XB?ZNN
MO<S2/4NN2[2DG06/JU$R.3J;#D)\#/BNL:%G8PB9+)U[")/+?)1T@R$TF'%@
M4/+9X R-"41BX]>6,]E+!N#S\8[]4\Q=<EDJPIDS]SKG8I2<)I#C2M6&;USS
M!;?Y' >^S!F*O]"TL0-1S&IB5V[!,B^U;;_J<7L.SP"GW5< O2V@%WVW0M'E
MN6(U'GK7@ _1PA8&,=6(%G/:ADNY92^[6G \GEW-YY=W\XO%W2U,%N<PNUK<
M72X^7RQFEQ>WPY1%(@2FV99NVM+U7J'KP]Q9+@@N;([YW_A4K.W]]7;^IKV#
MA'/E.] _>@^];N_X %]_GV\_\O7_)U_X,5D2>WDI/U]*O64>O,P<JN>,*I7A
M*)'R(/0;3,;OWAZ==#\>\#W8^QX<8O_W>SI,=]*!PR?Q%=?*P+5W&6*N[9K@
M'D%YA J]=KG.E#%/H.W&F0WF,@"C6:]5+#4N%$NP)J2PPP6"\\(B50^9JSW)
M? 7+FL05$2B;@W09'\'4@;L"?2MFG72+K) 'SXR>1-P&,ZU @X"/E50WL(-"
M;03R1@+%GSC7I5P%@Y@1/5B)MLW">N5(1X_.[S2%3^Y+JEBDV[0S1RRVB)Q@
M6-)K-!<Q#0ETIFX)5I 9I4MZ#T8U5&O>9B)Q7BAL8$91E4,(N02OEH1,A4/)
M:N\Q[[ST,M)GU5RB7\>>1>'@++>%O5_=M\5)VPW^A+<]5:IGK2V!P95 NYT/
MQPGXMD^U$W95[ U+Q])IXK"0UHX^!,C^RCG>38+ _L]B_!M02P,$%     @
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
M9%!6 ;^OI32'BW70//&3?P%02P,$%     @ [8&L6JEV/NU. P  9P<  !D
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
M"]F1 U,+Y/L9I6(S4 [*'M_^!5!+ P04    " #M@:Q:]]3SVP@&  !@*0
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
M\HL>#**>-76@^-JVZXPKW?QVN=+C&85)T.<+SM4N,!_8#_SP+U!+ P04
M" #M@:Q:MI23%84"  !I!@  &0   'AL+W=O<FMS:&5E=',O<VAE970R-BYX
M;6RM55UOFS 4_2M7K)I:J0L$TF[J$B0*:8?4DBBDV\.T!P=N$JL&,]OYV+^?
M#21*I;3+I+Z KWW/L<^Y^-+?</$LEX@*M@4KY<!:*E7=V+;,EE@0V>$5EGIE
MSD5!E [%PI:50)+7H(+9KN-<VP6AI>7WZ[FQ\/M\I1@M<2Q KHJ"B#^WR/AF
M8'6MW<2$+I;*3-A^OR(+3%$]56.A(WO/DM,"2TEY"0+G ROHWD2>R:\3OE/<
MR(,Q&"4SSI]-$.<#RS$'0H:9,@Q$O]88(F.&2!_C=\MI[;<TP,/QCOVNUJZU
MS(C$D+,?-%?+@?7%@ASG9,74A&^^8:OGRO!EG,GZ"9LVU[$@6TG%BQ:L3U#0
MLGF3;>O# :#;>P7@M@#W5(#7 KQ3 ;T6T*N=::34/D1$$;\O^ :$R=9L9E";
M6:.U?%J:LJ=*Z%6J<<J_#=(XA=$=C"?#=)A,@VD\2B!((@B'DVD0)Y#&]TE\
M%X=!,H4@#$=/R31.[F$\>HC#>)A>0I!E?%4J"1/,D*[)C"&0,H?AMM+%Q1Q"
M@3E5\,"E1 GG$2I"F;R 3_"41G!^=@%G0$MXI(SI3T'V;:6%F>/962OBMA'A
MOB+BD8@.>-U+<!WWZ@@\?!L>8;:']X[ H]/AWDNXK:NQ+XF[+XE;\WFO\/VG
MGS^#F51"WY]?QXQKMNH=W\KTE!M9D0P'EFX:$L4:+?_CA^ZU\_68C>])%KT3
MV0N+O;W%WEOL?L!TNR-EAJ ;)^#.V*PQEM7&'G.S8>TZ-:WIJ&O?Z73[]OK0
MI5.2HG\D-:KL@WMMFK#^SA>TE,!PKE%.Y_.5!:)I;$V@>%5?]1E7NG'4PZ7^
M%Z P"7I]SKG:!:9[[/\N_E]02P,$%     @ [8&L6B S%<5I P  Q@T  !D
M  !X;"]W;W)K<VAE971S+W-H965T,C<N>&ULK9=M;^(X$,>_RBBW.NU*>\T#
MC^T!4DCI7J0KH$)O7ZSNA2$#B3:)L[:!]C[]V4Z:PEY(KQ%OB.UX_C,_!]LS
M@P-EWWF(*. IB5,^-$(ALAO3Y.L0$\*O:(:I?+.A+"%"=MG6Y!E#$FBC)#8=
MR^J:"8E28S308W,V&M"=B*,4YPSX+DD(>QYC3 ]#PS9>!AZB;2C4@#D:9&2+
M"Q2/V9S)GEFJ!%&"*8]H"@PW0\.U;SR[I0STC+\B//"C-BB4%:7?5<</AH:E
M(L(8UT))$/G8HX=QK)1D'#\*4:/TJ0R/VR_J=QI>PJP(1X_&7Z- A$.C;T"
M&[*+Q0,]_($%4$?IK6G,]2\<BKF6 >L=%S0IC&4$293F3_)4+,21@=2I-G *
M ^=G@_89@U9AH%?.S"/36+=$D-& T0,P-5NJJ89>&VTM::)4?<:%8/)M).W$
M:.PN_ 7,[F#^,%E,IDMWZ<^FX$YOP9L\+%U_"@O_R]2_\SUWN@37\V:/TZ4_
M_0+SV9^^YT\6GV$F0F3@IX*DVV@5([B<H^#P\18%B6+^"7Z#Q\4M?/SP"3Y
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
M_6PGA  AW2KV KZ=S]_Y?(YSW%DS_B0B (F>DYB*KA5)N;BR;1%$D&!QR19
MU<R,\01+U>5S6RPXX- 8);'M.4[#3C"A5J]CQNYYK\.6,B84[CD2RR3!_-<
M8K;N6JZU&7@@\TCJ ;O76> YC$%.%O=<]>P<)20)4$$811QF7:OO7@U=7QN8
M%5\)K$6AC;0K4\:>=.=SV+4<S0AB"*2&P.IO!4.(8XVD>/S,0*U\3VU8;&_0
M/QKGE3-3+&#(XF\DE%'7:EDHA!E>QO*!K3]!YE!=XP4L%N87K;.UCH6"I9 L
MR8P5@X30]!\_9T(4#!1.N8&7&7C[!K4C!GYF8)2S4V;&K6LL<:_#V1IQO5JA
MZ8;1QE@K;PC5QSB67,T292=[X\>[X9>+07\\ND;#NYO[T>VX__CY[O8]NF7T
M8@5"0HC&P%<D@ NM5X@>U" G@9F0+'A"$THDZJ\Q#P4ZNP:)22S.T06:C*_1
MV=MS]!81BAXCMA28AJ)C2\5;[VX'&<=!RM$[PM%'-XS*2* 1#2'<M;>5O[G3
MWL;I@5<)>(/Y)?+=]\ASO'H)G^'?F]<JZ/CY&?@&KW8$KU10)>7#>*)T_'X#
MR13XCS+=*G'U#7 E%CB KJ527*A#!*OW[HW;<#Z4.7TBL!T):KD$-8/N'PO#
M"/--? U9HBXI@4V:CYYU&]#W_E2)I)*^5(?:*74X$=B.#O5<AWIE*-PN]5DC
M-D-"*R(0$6*I-)EQEB"=C83.]2S?AHPP(7.F4BPU.2\3*-VU;G;5-_NJY];;
M3;]CKXJ>'Z[RFEXS7[3C42/WJ%'IT>;N&!R_.T1EC%?"_^O9G@AL1XEFKD3S
M?\9X\Y0ZG AL1X=6KD.K.B+TP6<Z!$4=(-6AS/D4L5&,7\?9B][#-5YAS0[5
M=DZU74GUR/=AT#Y(%+_=WJ-3B?Q*B5UG^UEW7F+>*/W2.H<W0:N^1[T:^[7<
M"R6)^Q+W9BEW]U#VVC[U2NC74O>VU+V7J+=*J7L'U ]$KT1^+?-M#>)6%R$3
MRB%@<TI^J[0<'<_$#*:89@UO_T-2O=>_^F(7RML$^-Q4_4+='4LJTZ(O'TU?
M%@/]LM#E\=ZX>G'T39UM;V'2YXHJZ>:$"A3#3$$ZETUU4CQ] :0=R1:FB)XR
MJ4IRTXS4JPFX7J#F9XS)34=OD+_#>G\ 4$L#!!0    ( .V!K%JDI9T&^0,
M * /   9    >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM;+U7VX[B.!#]%2L[
M6G5+T^1"PJ47D*!A=N:A6PBV=Q]&\V"2 JQ.;-8V,"/MQV\Y">'2(=VCC?8%
M8L=U?(ZK7*GJ[85\46L 3;XG,5=]:ZWUYMZV5;B&A*J&V #'-TLA$ZIQ*%>V
MVDB@46J4Q+;G."T[H8Q;@UXZ-Y6#GMCJF'&82J*V24+ECQ'$8M^W7.LP,6.K
MM383]J"WH2N8@W[>3"6.[ (E8@EPQ00G$I9]:^C>/[B!,4A7_,E@KTZ>B9&R
M$.+%#+Y$?<LQC""&4!L(BG\[>( X-DC(X^\<U"KV-(:GSP?T3ZEX%+.@"AY$
M_!>+]+IO=2P2P9)N8ST3^\^0"TH)AB)6Z2_9YVL=BX1;I462&R.#A/'LGW[/
M#^+$ ''*#;S<P+LT\*\8-'.#9BHT8Y;*&E--!STI]D2:U8AF'M*S2:U1#>/&
MC7,M\2U#.SV8#&=/7YY^GY/I9$;FGX>S";D9@Z8L5K?DCCS/Q^3FPRWY0&RB
MUE2"(HR39\ZT^HB3^/S'6FP5Y9'JV1KY&%0[S/<>97M[5_9NDD?!]5J1"8\@
M.K>W44<AQCN(&7F5@(]4-DC3_4@\QPM*^#R\W]ROH-,LSK:9XC6OX#UM$Y!4
M"TF^#A=*2PS9;V6GE*'XY2CF'M^K#0VA;^%%52!W8 U^_<5M.;^52:P)[$RP
M7PCVJ] '3YAV& ]% F4R,]M6:FNRRV[@>JUVJV?O3OF_7A487^Y*: 4%K:#2
M#V/@ J_..SP1U.F)FL#.)+<*R:U*3XRH8B'9ITD,HCNZPT!< 4'7))@[\YN,
M65UIO+J,K\@-.TS?EAU,MEMPXI5.X+B>XU]XKV2=[SC-P"_W8+N0TZZ4,V;Q
M%G74**A=(J@;-#WG0E#9N@I!G4)0YQW^ 2HY<E5D S(CF]*.1!Q3>3);JB#;
MH'-ZG1I^]X+^ZT5.PVF5<^\6W+OO<L9_8M\M8]^^8/]ZT77VKG/\XCF5_&>
M&8"%1L)<B_"%?'V$9 'R&_F'C 25$1%+,F82"PV!.@YO2[]OE3O];,*H"^W\
M7$XJ ;>F-)D#U26[)K1SV=Y1MO=V.&,I26"Y1)<;YYM-6 AWICZ,L%@MXD6E
M\4+W&"2*K"3E9G*+U8LD>@UD&E/^5N+)V9QFE*[?NDP[):L"U^E<"?UC0>)6
M?OXK0W^2;&+Q ^"-B*^U6*D+[?PXCN6*Z]<5\96%ST_+K@GM7/:Q''(K2X__
M/>*#DJ*@%5P6?B7+NGZGZUW$O'W2ZV!YO4I;0(6%P);KK%,H9K,V<V3:3-,K
M7<QC^SE,FR[[")/UKM@'K!A7)(8E0CJ--G*263N8#;38I!W50FCLS]+'-;;0
M(,T"?+\40A\&9H.B*1_\"U!+ P04    " #M@:Q:4.&,PSH#  !-$0  &0
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
MGW5_?&=?4$L! A0#%     @ [8&L6D;'34B5    S0   !
M ( !     &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4    " #M@:Q:WU872?$
M   K @  $0              @ '#    9&]C4')O<',O8V]R92YX;6Q02P$"
M% ,4    " #M@:Q:F5R<(Q &  "<)P  $P              @ 'C 0  >&PO
M=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0    ( .V!K%JYRV,>U04  -X>   8
M              " @20(  !X;"]W;W)K<VAE971S+W-H965T,2YX;6Q02P$"
M% ,4    " #M@:Q:='5;<M8&  #3&P  &               @($O#@  >&PO
M=V]R:W-H965T<R]S:&5E=#(N>&UL4$L! A0#%     @ [8&L6A$,F949 P
MH D  !@              ("!.Q4  'AL+W=O<FMS:&5E=',O<VAE970S+GAM
M;%!+ 0(4 Q0    ( .V!K%I,T4-B!04   D4   8              " @8H8
M  !X;"]W;W)K<VAE971S+W-H965T-"YX;6Q02P$"% ,4    " #M@:Q:J4&!
MISX&  ",&P  &               @('%'0  >&PO=V]R:W-H965T<R]S:&5E
M=#4N>&UL4$L! A0#%     @ [8&L6J[4B0 9!@  D"8  !@
M ("!.20  'AL+W=O<FMS:&5E=',O<VAE970V+GAM;%!+ 0(4 Q0    ( .V!
MK%HV.X$\CA8  .0\   8              " @8@J  !X;"]W;W)K<VAE971S
M+W-H965T-RYX;6Q02P$"% ,4    " #M@:Q:;JP3A(0#  #F!P  &
M        @(%,00  >&PO=V]R:W-H965T<R]S:&5E=#@N>&UL4$L! A0#%
M  @ [8&L6M^$2<#) @  & 8  !@              ("!!D4  'AL+W=O<FMS
M:&5E=',O<VAE970Y+GAM;%!+ 0(4 Q0    ( .V!K%J9('D#= 8  '\/   9
M              " @05(  !X;"]W;W)K<VAE971S+W-H965T,3 N>&UL4$L!
M A0#%     @ [8&L6E\UAX E!   I D  !D              ("!L$X  'AL
M+W=O<FMS:&5E=',O<VAE970Q,2YX;6Q02P$"% ,4    " #M@:Q:0)[9.M4"
M   X!@  &0              @($,4P  >&PO=V]R:W-H965T<R]S:&5E=#$R
M+GAM;%!+ 0(4 Q0    ( .V!K%IDHU9Q90,   4(   9              "
M@1A6  !X;"]W;W)K<VAE971S+W-H965T,3,N>&UL4$L! A0#%     @ [8&L
M6AW"'C10!0  9 P  !D              ("!M%D  'AL+W=O<FMS:&5E=',O
M<VAE970Q-"YX;6Q02P$"% ,4    " #M@:Q:J+A&\TD3   I.   &0
M        @($[7P  >&PO=V]R:W-H965T<R]S:&5E=#$U+GAM;%!+ 0(4 Q0
M   ( .V!K%K0]H%A_0,  +X(   9              " @;MR  !X;"]W;W)K
M<VAE971S+W-H965T,38N>&UL4$L! A0#%     @ [8&L6@".N 6= P  [@<
M !D              ("![W8  'AL+W=O<FMS:&5E=',O<VAE970Q-RYX;6Q0
M2P$"% ,4    " #M@:Q:J78^[4X#  !G!P  &0              @('#>@
M>&PO=V]R:W-H965T<R]S:&5E=#$X+GAM;%!+ 0(4 Q0    ( .V!K%K6FVU2
M>P(  ( %   9              " @4A^  !X;"]W;W)K<VAE971S+W-H965T
M,3DN>&UL4$L! A0#%     @ [8&L6C^.'9 _ P  [PL  !D
M ("!^H   'AL+W=O<FMS:&5E=',O<VAE970R,"YX;6Q02P$"% ,4    " #M
M@:Q:]]3SVP@&  !@*0  &0              @(%PA   >&PO=V]R:W-H965T
M<R]S:&5E=#(Q+GAM;%!+ 0(4 Q0    ( .V!K%JN1F[53@(  -@$   9
M          " @:^*  !X;"]W;W)K<VAE971S+W-H965T,C(N>&UL4$L! A0#
M%     @ [8&L6K5M#<-> P  71   !D              ("!-(T  'AL+W=O
M<FMS:&5E=',O<VAE970R,RYX;6Q02P$"% ,4    " #M@:Q:9GYY&=0"   M
M!P  &0              @(')D   >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM
M;%!+ 0(4 Q0    ( .V!K%K6B >!D@(  /P%   9              " @=23
M  !X;"]W;W)K<VAE971S+W-H965T,C4N>&UL4$L! A0#%     @ [8&L6K:4
MDQ6% @  :08  !D              ("!G98  'AL+W=O<FMS:&5E=',O<VAE
M970R-BYX;6Q02P$"% ,4    " #M@:Q:(#,5Q6D#  #&#0  &0
M    @(%9F0  >&PO=V]R:W-H965T<R]S:&5E=#(W+GAM;%!+ 0(4 Q0    (
M .V!K%H((2X250,  +,)   9              " @?F<  !X;"]W;W)K<VAE
M971S+W-H965T,C@N>&UL4$L! A0#%     @ [8&L6@CU&< [ @  >@4  !D
M             ("!A:   'AL+W=O<FMS:&5E=',O<VAE970R.2YX;6Q02P$"
M% ,4    " #M@:Q:XX NO3T&  #%0P  &0              @('WH@  >&PO
M=V]R:W-H965T<R]S:&5E=#,P+GAM;%!+ 0(4 Q0    ( .V!K%H!E!-R!00
M # .   9              " @6NI  !X;"]W;W)K<VAE971S+W-H965T,S$N
M>&UL4$L! A0#%     @ [8&L6F*CNFZ7 P  DPT  !D              ("!
MIZT  'AL+W=O<FMS:&5E=',O<VAE970S,BYX;6Q02P$"% ,4    " #M@:Q:
MI*6=!OD#  "@#P  &0              @(%UL0  >&PO=V]R:W-H965T<R]S
M:&5E=#,S+GAM;%!+ 0(4 Q0    ( .V!K%I0X8S#.@,  $T1   9
M      " @:6U  !X;"]W;W)K<VAE971S+W-H965T,S0N>&UL4$L! A0#%
M  @ [8&L6L2+HD4( P  ZP@  !D              ("!%KD  'AL+W=O<FMS
M:&5E=',O<VAE970S-2YX;6Q02P$"% ,4    " #M@:Q:/KL':#H#  #N$P
M#0              @ %5O   >&PO<W1Y;&5S+GAM;%!+ 0(4 Q0    ( .V!
MK%J7BKL<P    !,"   +              "  ;J_  !?<F5L<R\N<F5L<U!+
M 0(4 Q0    ( .V!K%K "'@P> ,  !D8   /              "  :/   !X
M;"]W;W)K8F]O:RYX;6Q02P$"% ,4    " #M@:Q:2XJ@"W,!  !P%0  &@
M            @ %(Q   >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"
M% ,4    " #M@:Q:WR$G&Y(!  #Y%0  $P              @ 'SQ0  6T-O
F;G1E;G1?5'EP97-=+GAM;%!+!08     *P K *0+  "VQP     !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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>50
<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>52
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>91</ContextCount>
  <ElementCount>195</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>31</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>7</UnitCount>
  <MyReports>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000100 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/DocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>010000 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>010100 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>020000 - Statement - Consolidated Statements of Operations and Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome</Role>
      <ShortName>Consolidated Statements of Operations and Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>030000 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>040000 - Statement - Consolidated Statements of Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>Consolidated Statements of Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>060100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>060200 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://tandyleather.com/role/NotesPayableAndLongtermDebt</Role>
      <ShortName>NOTES PAYABLE AND LONG-TERM DEBT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>060300 - Disclosure - INCOME TAX</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/IncomeTax</Role>
      <ShortName>INCOME TAX</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>060400 - Disclosure - STOCK-BASED COMPENSATION</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/StockbasedCompensation</Role>
      <ShortName>STOCK-BASED COMPENSATION</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>060500 - Disclosure - EARNINGS PER SHARE</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/EarningsPerShare</Role>
      <ShortName>EARNINGS PER SHARE</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>060600 - Disclosure - COMMITMENTS AND CONTINGENCIES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/CommitmentsAndContingencies</Role>
      <ShortName>COMMITMENTS AND CONTINGENCIES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>060700 - Disclosure - SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases</Role>
      <ShortName>SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>060800 - Disclosure - SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment</Role>
      <ShortName>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>070100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>080100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies</ParentRole>
      <Position>16</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>080400 - Disclosure - STOCK-BASED COMPENSATION (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/StockbasedCompensationTables</Role>
      <ShortName>STOCK-BASED COMPENSATION (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tandyleather.com/role/StockbasedCompensation</ParentRole>
      <Position>17</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>080500 - Disclosure - EARNINGS PER SHARE (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/EarningsPerShareTables</Role>
      <ShortName>EARNINGS PER SHARE (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tandyleather.com/role/EarningsPerShare</ParentRole>
      <Position>18</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>080800 - Disclosure - SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables</Role>
      <ShortName>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment</ParentRole>
      <Position>19</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>090100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Basis of Presentation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Basis of Presentation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>090102 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition and Discounts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition and Discounts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>090104 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>090106 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>090108 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Inventory (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Inventory (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>090110 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>090112 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>090114 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails</Role>
      <ShortName>BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>27</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>090200 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails</Role>
      <ShortName>NOTES PAYABLE AND LONG-TERM DEBT (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/NotesPayableAndLongtermDebt</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>090300 - Disclosure - INCOME TAX (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/IncomeTaxDetails</Role>
      <ShortName>INCOME TAX (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/IncomeTax</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>090400 - Disclosure - STOCK-BASED COMPENSATION, 2013 and 2023 Restricted Stock Plans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails</Role>
      <ShortName>STOCK-BASED COMPENSATION, 2013 and 2023 Restricted Stock Plans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>090402 - Disclosure - STOCK-BASED COMPENSATION, Summary of Activity for Non-vested Restricted Stock Unit Awards (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails</Role>
      <ShortName>STOCK-BASED COMPENSATION, Summary of Activity for Non-vested Restricted Stock Unit Awards (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>090404 - Disclosure - STOCK-BASED COMPENSATION, Non-vested Service-based Restricted Stock Unit Awards (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails</Role>
      <ShortName>STOCK-BASED COMPENSATION, Non-vested Service-based Restricted Stock Unit Awards (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>090500 - Disclosure - EARNINGS PER SHARE (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/EarningsPerShareDetails</Role>
      <ShortName>EARNINGS PER SHARE (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/EarningsPerShareTables</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>090700 - Disclosure - SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails</Role>
      <ShortName>SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="ef20047588_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>090800 - Disclosure - SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails</Role>
      <ShortName>SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables</ParentRole>
      <Position>35</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-Q" isDefinitelyFs="true" isUsgaap="true" original="ef20047588_10q.htm">ef20047588_10q.htm</File>
    <File>tlfa-20250331.xsd</File>
    <File>tlfa-20250331_cal.xml</File>
    <File>tlfa-20250331_def.xml</File>
    <File>tlfa-20250331_lab.xml</File>
    <File>tlfa-20250331_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>image00001.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="2">http://fasb.org/srt/2024</BaseTaxonomy>
    <BaseTaxonomy items="380">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>55
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "ef20047588_10q.htm": {
   "nsprefix": "tlfa",
   "nsuri": "http://tandyleather.com/20250331",
   "dts": {
    "inline": {
     "local": [
      "ef20047588_10q.htm"
     ]
    },
    "schema": {
     "local": [
      "tlfa-20250331.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/2004/ref-2004-08-10.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/factExplanatory-2009-12-16.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/currency/2024/currency-2024.xsd",
      "https://xbrl.sec.gov/cyd/2024/cyd-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/exch/2024/exch-2024.xsd",
      "https://xbrl.sec.gov/naics/2024/naics-2024.xsd",
      "https://xbrl.sec.gov/sic/2024/sic-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "tlfa-20250331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tlfa-20250331_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "tlfa-20250331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tlfa-20250331_pre.xml"
     ]
    }
   },
   "keyStandard": 182,
   "keyCustom": 13,
   "axisStandard": 13,
   "axisCustom": 0,
   "memberStandard": 21,
   "memberCustom": 10,
   "hidden": {
    "total": 13,
    "http://fasb.org/us-gaap/2024": 8,
    "http://xbrl.sec.gov/dei/2024": 5
   },
   "contextCount": 91,
   "entityCount": 1,
   "segmentCount": 31,
   "elementCount": 316,
   "unitCount": 7,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 380,
    "http://xbrl.sec.gov/dei/2024": 29,
    "http://fasb.org/srt/2024": 2
   },
   "report": {
    "R1": {
     "role": "http://tandyleather.com/role/DocumentAndEntityInformation",
     "longName": "000100 - Document - Document and Entity Information",
     "shortName": "Document and Entity Information",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://tandyleather.com/role/ConsolidatedBalanceSheets",
     "longName": "010000 - Statement - Consolidated Balance Sheets",
     "shortName": "Consolidated Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical",
     "longName": "010100 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
     "longName": "020000 - Statement - Consolidated Statements of Operations and Comprehensive Income",
     "shortName": "Consolidated Statements of Operations and Comprehensive Income",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "unique": true
     }
    },
    "R5": {
     "role": "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows",
     "longName": "030000 - Statement - Consolidated Statements of Cash Flows",
     "shortName": "Consolidated Statements of Cash Flows",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:CostOfGoodsAndServicesSoldDepreciation",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity",
     "longName": "040000 - Statement - Consolidated Statements of Stockholders' Equity",
     "shortName": "Consolidated Statements of Stockholders' Equity",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c20231231_StatementEquityComponentsAxis_CommonStockMember",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20231231_StatementEquityComponentsAxis_CommonStockMember",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies",
     "longName": "060100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "7",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://tandyleather.com/role/NotesPayableAndLongtermDebt",
     "longName": "060200 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT",
     "shortName": "NOTES PAYABLE AND LONG-TERM DEBT",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://tandyleather.com/role/IncomeTax",
     "longName": "060300 - Disclosure - INCOME TAX",
     "shortName": "INCOME TAX",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://tandyleather.com/role/StockbasedCompensation",
     "longName": "060400 - Disclosure - STOCK-BASED COMPENSATION",
     "shortName": "STOCK-BASED COMPENSATION",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://tandyleather.com/role/EarningsPerShare",
     "longName": "060500 - Disclosure - EARNINGS PER SHARE",
     "shortName": "EARNINGS PER SHARE",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://tandyleather.com/role/CommitmentsAndContingencies",
     "longName": "060600 - Disclosure - COMMITMENTS AND CONTINGENCIES",
     "shortName": "COMMITMENTS AND CONTINGENCIES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases",
     "longName": "060700 - Disclosure - SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES",
     "shortName": "SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:ShareRepurchaseProgramAndShareRepurchasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:ShareRepurchaseProgramAndShareRepurchasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment",
     "longName": "060800 - Disclosure - SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT",
     "shortName": "SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies",
     "longName": "070100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables",
     "longName": "080100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://tandyleather.com/role/StockbasedCompensationTables",
     "longName": "080400 - Disclosure - STOCK-BASED COMPENSATION (Tables)",
     "shortName": "STOCK-BASED COMPENSATION (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://tandyleather.com/role/EarningsPerShareTables",
     "longName": "080500 - Disclosure - EARNINGS PER SHARE (Tables)",
     "shortName": "EARNINGS PER SHARE (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables",
     "longName": "080800 - Disclosure - SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT (Tables)",
     "shortName": "SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "19",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails",
     "longName": "090100 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Basis of Presentation (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Basis of Presentation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "20",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:NumberOfStores",
      "unitRef": "U004",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:NumberOfStores",
      "unitRef": "U004",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails",
     "longName": "090102 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition and Discounts (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition and Discounts (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "21",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
       "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
       "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
       "span",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails",
     "longName": "090104 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "22",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:NumberOfClassesOfCustomerDiscounts",
      "unitRef": "U007",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "div",
       "tlfa:RevenueRecognitionDiscountsPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:NumberOfClassesOfCustomerDiscounts",
      "unitRef": "U007",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "span",
       "div",
       "tlfa:RevenueRecognitionDiscountsPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails",
     "longName": "090106 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "23",
     "firstAnchor": {
      "contextRef": "c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails",
     "longName": "090108 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Inventory (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Inventory (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "24",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails",
     "longName": "090110 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "25",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails",
     "longName": "090112 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "us-gaap:CreditLossFinancialInstrumentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "div",
       "us-gaap:CreditLossFinancialInstrumentPolicyTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails",
     "longName": "090114 - Disclosure - BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details)",
     "shortName": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "27",
     "firstAnchor": {
      "contextRef": "c20250101to20250331_RangeAxis_MaximumMember",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-4",
      "ancestors": [
       "div",
       "us-gaap:IntangibleAssetsFiniteLivedPolicy",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331_RangeAxis_MaximumMember",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-4",
      "ancestors": [
       "div",
       "us-gaap:IntangibleAssetsFiniteLivedPolicy",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails",
     "longName": "090200 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT (Details)",
     "shortName": "NOTES PAYABLE AND LONG-TERM DEBT (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "28",
     "firstAnchor": {
      "contextRef": "c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember",
      "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://tandyleather.com/role/IncomeTaxDetails",
     "longName": "090300 - Disclosure - INCOME TAX (Details)",
     "shortName": "INCOME TAX (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "29",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "U006",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations",
      "unitRef": "U006",
      "xsiNil": "false",
      "lang": null,
      "decimals": "3",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
     "longName": "090400 - Disclosure - STOCK-BASED COMPENSATION, 2013 and 2023 Restricted Stock Plans (Details)",
     "shortName": "STOCK-BASED COMPENSATION, 2013 and 2023 Restricted Stock Plans (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "30",
     "firstAnchor": {
      "contextRef": "c20200630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember",
      "name": "us-gaap:CommonStockCapitalSharesReservedForFutureIssuance",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20200630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember",
      "name": "us-gaap:CommonStockCapitalSharesReservedForFutureIssuance",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails",
     "longName": "090402 - Disclosure - STOCK-BASED COMPENSATION, Summary of Activity for Non-vested Restricted Stock Unit Awards (Details)",
     "shortName": "STOCK-BASED COMPENSATION, Summary of Activity for Non-vested Restricted Stock Unit Awards (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "31",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "link:footnote",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "tlfa:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "link:footnote",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails",
     "longName": "090404 - Disclosure - STOCK-BASED COMPENSATION, Non-vested Service-based Restricted Stock Unit Awards (Details)",
     "shortName": "STOCK-BASED COMPENSATION, Non-vested Service-based Restricted Stock Unit Awards (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "32",
     "firstAnchor": {
      "contextRef": "c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember",
      "name": "us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember",
      "name": "us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://tandyleather.com/role/EarningsPerShareDetails",
     "longName": "090500 - Disclosure - EARNINGS PER SHARE (Details)",
     "shortName": "EARNINGS PER SHARE (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "unitRef": "U001",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "unique": true
     }
    },
    "R34": {
     "role": "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails",
     "longName": "090700 - Disclosure - SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES (Details)",
     "shortName": "SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:TreasuryStockCommonValue",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "unique": true
     }
    },
    "R35": {
     "role": "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails",
     "longName": "090800 - Disclosure - SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT (Details)",
     "shortName": "SALES OF CORPORATE HEADQUARTERS & NEW CEO EMPLOYMENT (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "c20250101to20250331",
      "name": "us-gaap:ProceedsFromSaleOfProductiveAssets",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "td",
       "tr",
       "table",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c20250331",
      "name": "tlfa:HeadquarterAssetsNetBookValue",
      "unitRef": "U002",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "div",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
       "ix:continuation",
       "div",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "ef20047588_10q.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableTradeCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableTradeCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts payable-trade",
        "documentation": "Carrying value as of the balance sheet date of obligations 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": [
      "r15",
      "r55"
     ]
    },
    "tlfa_AccountsReceivableAndExpectedCreditLossesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "AccountsReceivableAndExpectedCreditLossesAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable And Expected Credit Losses [Abstract]",
        "terseLabel": "Accounts Receivable and Expected Credit Losses [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts receivable-trade, net of allowance for credit losses of $49 at March 31, 2025 and December 31, 2024",
        "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": [
      "r677"
     ]
    },
    "us-gaap_AccruedLiabilitiesAndOtherLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedLiabilitiesAndOtherLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accrued expenses and other liabilities",
        "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other."
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_AccruedLiabilitiesAndOtherLiabilitiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "AccruedLiabilitiesAndOtherLiabilitiesMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other.",
        "label": "Accrued Liabilities and Other Liabilities [Member]",
        "terseLabel": "Accrued Expenses and Other Liabilities [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Less accumulated depreciation",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r31",
      "r144",
      "r486"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated other comprehensive loss, net of tax",
        "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source."
       }
      }
     },
     "auth_ref": [
      "r17",
      "r18",
      "r73",
      "r147",
      "r482",
      "r500",
      "r501"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accumulated Other Comprehensive Income (Loss) [Member]",
        "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r9",
      "r18",
      "r405",
      "r408",
      "r432",
      "r496",
      "r497",
      "r657",
      "r658",
      "r659",
      "r665",
      "r666",
      "r667",
      "r668"
     ]
    },
    "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted average amortization period",
        "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r248",
      "r585"
     ]
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r65",
      "r622",
      "r778"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Paid-in Capital [Member]",
        "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": [
      "r508",
      "r665",
      "r666",
      "r667",
      "r668",
      "r728",
      "r779"
     ]
    },
    "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash used in operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation expense",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r38",
      "r39",
      "r327"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total adjustments",
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities",
        "documentation": "The sum of adjustments which are added to or deducted from net income or loss, including the portion attributable to noncontrolling interest, to reflect cash provided by or used in operating activities, in accordance with the indirect cash flow method."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "tlfa_AllOtherCountriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "AllOtherCountriesMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All other countries excluding the United States and Canada.",
        "label": "All Other Countries [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation expense",
        "label": "Share-Based Payment Arrangement, Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r360",
      "r369"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivable",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for expected credit losses",
        "documentation": "Amount of allowance for credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r148",
      "r214",
      "r221",
      "r224",
      "r225",
      "r745"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Allowance for credit losses",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r148",
      "r214",
      "r221"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expenses",
        "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": [
      "r5",
      "r245",
      "r251",
      "r600"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "TOTAL ASSETS",
        "label": "Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r101",
      "r109",
      "r146",
      "r167",
      "r200",
      "r202",
      "r207",
      "r208",
      "r215",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r400",
      "r402",
      "r414",
      "r479",
      "r534",
      "r596",
      "r597",
      "r622",
      "r642",
      "r696",
      "r697",
      "r737"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets",
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r139",
      "r153",
      "r167",
      "r215",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r400",
      "r402",
      "r414",
      "r622",
      "r696",
      "r697",
      "r737"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets",
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CURRENT ASSETS:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails",
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359"
     ]
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BalanceSheetLocationAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Balance Sheet Location [Axis]",
        "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported."
       }
      }
     },
     "auth_ref": [
      "r262",
      "r747",
      "r748"
     ]
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BalanceSheetLocationDomain",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Balance Sheet Location [Domain]",
        "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported."
       }
      }
     },
     "auth_ref": [
      "r41",
      "r42",
      "r262",
      "r747",
      "r748"
     ]
    },
    "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES",
        "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": [
      "r88"
     ]
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BuildingAndBuildingImprovementsMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Buildings and Related Improvements [Member]",
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing."
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_BusinessDescriptionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "BusinessDescriptionAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Business Description [Abstract]",
        "terseLabel": "Description of Business [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "country_CA": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "CA",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Canada [Member]",
        "label": "CANADA"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "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": [
      "r20",
      "r142",
      "r588"
     ]
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash and cash equivalents",
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value."
       }
      }
     },
     "auth_ref": [
      "r21"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Cash and cash equivalents, end of period",
        "periodStartLabel": "Cash and cash equivalents, beginning of period",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "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": [
      "r20",
      "r85",
      "r165"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net increase in cash and cash equivalents",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r85"
     ]
    },
    "srt_ChiefExecutiveOfficerMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ChiefExecutiveOfficerMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Chief Executive Officer [Member]",
        "documentation": "Person with designation of chief executive officer."
       }
      }
     },
     "auth_ref": [
      "r676"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfTreasuryStockTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ClassOfTreasuryStockTable",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Treasury Stock [Table]",
        "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r35",
      "r36",
      "r37"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "COMMITMENTS AND CONTINGENCIES (Note 6)",
        "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": [
      "r62",
      "r102",
      "r480",
      "r521"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "COMMITMENTS AND CONTINGENCIES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://tandyleather.com/role/CommitmentsAndContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "COMMITMENTS AND CONTINGENCIES",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r93",
      "r263",
      "r264",
      "r573",
      "r691",
      "r693"
     ]
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of common shares reserved for issuance (in shares)",
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "documentation": "Aggregate number of common shares reserved for future issuance."
       }
      }
     },
     "auth_ref": [
      "r64"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r633",
      "r634",
      "r635",
      "r637",
      "r638",
      "r639",
      "r640",
      "r665",
      "r666",
      "r668",
      "r728",
      "r776",
      "r779"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, par value (in dollars per share)",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r64"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, shares authorized (in shares)",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r522"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, shares issued (in shares)",
        "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": [
      "r64"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, shares outstanding (in shares)",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r64",
      "r522",
      "r540",
      "r779",
      "r780"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common stock, $0.0024 par value; 25,000,000 shares authorized; 9,936,930 and 9,920,957 shares issued at March 31, 2025 and December 31, 2024, respectively; 8,512,554 and 8,496,581 shares outstanding at March 31, 2025 and December 31, 2024, respectively",
        "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": [
      "r64",
      "r481",
      "r622"
     ]
    },
    "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income",
        "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r99",
      "r155",
      "r157",
      "r162",
      "r474",
      "r491"
     ]
    },
    "us-gaap_ComprehensiveIncomePolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomePolicyPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Comprehensive Income (loss)",
        "documentation": "Disclosure of accounting policy for comprehensive income."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskBenchmarkDomain",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Domain]",
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage."
       }
      }
     },
     "auth_ref": [
      "r25",
      "r27",
      "r43",
      "r44",
      "r212",
      "r572"
     ]
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Concentration Risk Benchmark [Axis]",
        "documentation": "Information by benchmark of concentration risk."
       }
      }
     },
     "auth_ref": [
      "r25",
      "r27",
      "r43",
      "r44",
      "r212",
      "r503",
      "r572"
     ]
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskByTypeAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "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": [
      "r25",
      "r27",
      "r43",
      "r44",
      "r212",
      "r572",
      "r650"
     ]
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskPercentage1",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue percentage",
        "label": "Concentration Risk, 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": [
      "r25",
      "r27",
      "r43",
      "r44",
      "r212"
     ]
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ConcentrationRiskTypeDomain",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "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": [
      "r25",
      "r27",
      "r43",
      "r44",
      "r212",
      "r572"
     ]
    },
    "us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales return allowance",
        "label": "Contract with Customer, Asset, Allowance for Credit Loss",
        "documentation": "Amount of allowance for credit loss for 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": [
      "r221",
      "r224",
      "r225",
      "r310"
     ]
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiability",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract with customer liability",
        "label": "Contract with Customer, Liability",
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable."
       }
      }
     },
     "auth_ref": [
      "r308",
      "r309",
      "r321"
     ]
    },
    "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContractWithCustomerLiabilityRevenueRecognized",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue recognized from change in deferred obligation balance",
        "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due."
       }
      }
     },
     "auth_ref": [
      "r322"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cost of sales",
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities."
       }
      }
     },
     "auth_ref": [
      "r76",
      "r77",
      "r440"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSoldDepreciation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSoldDepreciation",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Depreciation and amortization",
        "documentation": "Amount of expense for allocation of cost of tangible asset over its useful life directly used in production of good and rendering of service."
       }
      }
     },
     "auth_ref": [
      "r660",
      "r689"
     ]
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditLossFinancialInstrumentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditLossFinancialInstrumentPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounts Receivable - Trade and Expected Credit Losses",
        "documentation": "Disclosure of accounting policy for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security. Includes, but is not limited to, methodology used to estimate allowance for credit loss, how writeoff of uncollectible amount is recognized, and determination of past due status and nonaccrual status."
       }
      }
     },
     "auth_ref": [
      "r218",
      "r219",
      "r220",
      "r222",
      "r223",
      "r226",
      "r227",
      "r228",
      "r229",
      "r230",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238"
     ]
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "NOTES PAYABLE AND LONG-TERM DEBT [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebt"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "NOTES PAYABLE AND LONG-TERM DEBT",
        "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": [
      "r94",
      "r166",
      "r257",
      "r258",
      "r259",
      "r260",
      "r261",
      "r269",
      "r270",
      "r280",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r296",
      "r303",
      "r304",
      "r306",
      "r423"
     ]
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basis points interest rate",
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument [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": [
      "r169",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r287",
      "r292",
      "r293",
      "r294",
      "r295",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r305",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r621",
      "r663",
      "r733",
      "r734"
     ]
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Long-term Debt Instruments [Table]",
        "documentation": "Disclosure of information about long-term debt instrument or arrangement."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r32",
      "r33",
      "r45",
      "r95",
      "r96",
      "r169",
      "r281",
      "r282",
      "r283",
      "r284",
      "r285",
      "r287",
      "r292",
      "r293",
      "r294",
      "r295",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r305",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r621",
      "r663",
      "r733",
      "r734"
     ]
    },
    "us-gaap_DebtInstrumentTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentTerm",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maturity period",
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentVariableInterestRateTypeExtensibleEnumeration": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentVariableInterestRateTypeExtensibleEnumeration",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Variable Interest Rate, Type [Extensible Enumeration]",
        "documentation": "Indicates type of variable interest rate on debt instrument."
       }
      }
     },
     "auth_ref": [
      "r478"
     ]
    },
    "us-gaap_DebtInstrumentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentsAbstract",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instruments [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income taxes",
        "label": "Deferred Income Tax Assets, Net",
        "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting."
       }
      }
     },
     "auth_ref": [
      "r374",
      "r375"
     ]
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred income taxes",
        "label": "Deferred Income Taxes and Tax Credits",
        "documentation": "Amount of deferred income tax expense (benefit) and income tax credits."
       }
      }
     },
     "auth_ref": [
      "r87"
     ]
    },
    "us-gaap_DeferredRevenueRevenueRecognized1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredRevenueRevenueRecognized1",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Deferred revenue, recognized",
        "documentation": "Amount of revenue recognized that was previously reported as deferred or unearned revenue."
       }
      }
     },
     "auth_ref": []
    },
    "srt_DirectorMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "DirectorMember",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Board of Directors [Member]",
        "documentation": "Person serving on board of directors."
       }
      }
     },
     "auth_ref": [
      "r652",
      "r676",
      "r777"
     ]
    },
    "us-gaap_DisaggregationOfRevenueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregated Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregation of Revenue [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": [
      "r320",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "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": [
      "r320",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Disaggregated Revenue",
        "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor."
       }
      }
     },
     "auth_ref": [
      "r700"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "STOCK-BASED COMPENSATION",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r325",
      "r330",
      "r361",
      "r362",
      "r364",
      "r615"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "STOCK-BASED COMPENSATION [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_DiscountsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "DiscountsAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Discounts [Abstract]",
        "terseLabel": "Discounts [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DividendsCommonStockCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DividendsCommonStockCash",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividend Paid",
        "label": "Dividends, Common Stock, Cash",
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash."
       }
      }
     },
     "auth_ref": [
      "r97"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r646"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r647"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": []
    },
    "country_ES": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "ES",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Spain [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Net income per common share:",
        "label": "EARNINGS PER SHARE [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic (in dollars per share)",
        "terseLabel": "Basic earnings per share (in dollars per share)",
        "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": [
      "r163",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r185",
      "r187",
      "r193",
      "r194",
      "r195",
      "r199",
      "r396",
      "r399",
      "r411",
      "r412",
      "r475",
      "r492",
      "r593"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted (in dollars per share)",
        "terseLabel": "Diluted earnings per share (in dollars per share)",
        "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": [
      "r163",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r180",
      "r187",
      "r193",
      "r194",
      "r195",
      "r199",
      "r396",
      "r399",
      "r411",
      "r412",
      "r475",
      "r492",
      "r593"
     ]
    },
    "us-gaap_EarningsPerShareDilutedLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDilutedLineItems",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share, Diluted, by Common Class, Including Two Class Method [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": [
      "r187",
      "r191",
      "r193"
     ]
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "EARNINGS PER SHARE",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r196",
      "r197",
      "r198"
     ]
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effect of exchange rate changes on cash and cash equivalents",
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts 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": [
      "r416"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://tandyleather.com/role/IncomeTaxDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Effective tax rate",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r377",
      "r616"
     ]
    },
    "tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails": {
       "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrecognized cost of unvested share-based compensation awards in excess of one year due in the fourth fiscal year following the latest fiscal year.",
        "label": "Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Four Years",
        "verboseLabel": "2028"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails": {
       "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrecognized cost of unvested share-based compensation awards in excess of one year due in the third fiscal year following the latest fiscal year.",
        "label": "Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Three Years",
        "terseLabel": "2027"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails": {
       "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrecognized cost of unvested share-based compensation awards due in excess of one year due in the second fiscal year following the latest fiscal year.",
        "label": "Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Two Years",
        "terseLabel": "2026"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails": {
       "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Unrecognized cost of unvested share-based compensation awards in excess of one year due in the next fiscal year following the latest fiscal year.",
        "label": "Employee Service Share-based Compensation Nonvested Awards Compensation Cost Not Yet Recognized Due In Next Twelve Months",
        "terseLabel": "2025"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Unrecognized Expense",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r363"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r644"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r644"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r644"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r648"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r644"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r644"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r644"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "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": [
      "r644"
     ]
    },
    "us-gaap_EquityClassOfTreasuryStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityClassOfTreasuryStockLineItems",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity, Class of Treasury Stock [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_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "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": [
      "r10",
      "r137",
      "r159",
      "r160",
      "r161",
      "r170",
      "r171",
      "r172",
      "r174",
      "r179",
      "r181",
      "r183",
      "r201",
      "r216",
      "r217",
      "r256",
      "r307",
      "r386",
      "r387",
      "r393",
      "r394",
      "r395",
      "r397",
      "r398",
      "r399",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r424",
      "r425",
      "r432",
      "r490",
      "r496",
      "r497",
      "r498",
      "r508",
      "r559"
     ]
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Transfers into (out of) Level 3",
        "documentation": "Amount of transfer of financial instrument classified as an asset into (out of) level 3 of the fair value hierarchy."
       }
      }
     },
     "auth_ref": [
      "r730",
      "r731"
     ]
    },
    "tlfa_FairValueOfFinancialInstrumentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "FairValueOfFinancialInstrumentsAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value of Financial Instruments [Abstract]",
        "terseLabel": "Fair Value of Financial Instruments [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Fair Value of Financial Instruments",
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinanceLeasePrincipalPayments",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Payment of finance lease obligations",
        "label": "Finance Lease, Principal Payments",
        "documentation": "Amount of cash outflow for principal payment on finance lease."
       }
      }
     },
     "auth_ref": [
      "r428",
      "r430"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expense, 2026",
        "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": [
      "r252",
      "r585",
      "r600"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expense, 2025",
        "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": [
      "r781"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expense, 2029",
        "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": [
      "r252",
      "r585",
      "r600"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expense, 2028",
        "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": [
      "r252",
      "r585",
      "r600"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amortization expense, 2027",
        "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": [
      "r252",
      "r585",
      "r600"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "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": [
      "r244",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r253",
      "r254",
      "r441",
      "r442",
      "r585"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsLineItems",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finite-Lived Intangible Assets [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": [
      "r244",
      "r250",
      "r253",
      "r254",
      "r255",
      "r441",
      "r585",
      "r600"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "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": [
      "r244",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r253",
      "r254",
      "r585"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsNetAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Intangible Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation and transactions",
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy."
       }
      }
     },
     "auth_ref": [
      "r415"
     ]
    },
    "us-gaap_FurnitureAndFixturesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FurnitureAndFixturesMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Furniture and Fixtures [Member]",
        "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GainLossOnDispositionOfAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GainLossOnDispositionOfAssets",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 2.0
      },
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows",
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gain on disposal of Headquarter (see footnote 8)",
        "negatedLabel": "Gain on disposal of assets",
        "label": "Net Gain",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r662",
      "r688",
      "r690"
     ]
    },
    "us-gaap_GeographicConcentrationRiskMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GeographicConcentrationRiskMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographic Concentration Risk [Member]",
        "documentation": "Reflects the percentage that a specified dollar value on the balance sheet or income statement in the period from one or more specified geographic areas is to a corresponding consolidated, segment, or product line amount. Risk is the materially adverse effects of economic decline or antagonistic political actions resulting in loss of assets, sales volume, labor supply, or source of materials and supplies in a US state or a specified country, continent, or region such as EMEA (Europe, Middle East, Africa)."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r572"
     ]
    },
    "tlfa_GiftCardRedemptionPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "GiftCardRedemptionPeriod",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expected customer gift card redemption period, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Gift Card Redemption Period",
        "terseLabel": "Gift card redemption period"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Gross profit",
        "label": "Gross Profit",
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r78",
      "r108",
      "r167",
      "r215",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r414",
      "r594",
      "r596",
      "r670",
      "r672",
      "r673",
      "r674",
      "r675",
      "r696"
     ]
    },
    "tlfa_HeadquarterAssetsNetBookValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "HeadquarterAssetsNetBookValue",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net book value of the asset(s) sold in connection with the sale of the headquarter assets.",
        "label": "Headquarter Assets, Net Book Value",
        "terseLabel": "NBV of Headquarter Assets"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impairment of Long-Lived Assets",
        "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r92"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income before income taxes",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest",
        "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": [
      "r75",
      "r104",
      "r108",
      "r476",
      "r488",
      "r594",
      "r596",
      "r670",
      "r672",
      "r673",
      "r674",
      "r675"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Operations and Comprehensive Income [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "INCOME TAX [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://tandyleather.com/role/IncomeTax"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "INCOME TAX",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r168",
      "r371",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r384",
      "r388",
      "r390",
      "r391",
      "r392",
      "r507",
      "r616"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax provision",
        "label": "Income Tax Expense (Benefit)",
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r110",
      "r114",
      "r182",
      "r183",
      "r200",
      "r205",
      "r208",
      "r376",
      "r377",
      "r389",
      "r493",
      "r616"
     ]
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Taxes",
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r372",
      "r373",
      "r381",
      "r382",
      "r383",
      "r385",
      "r505"
     ]
    },
    "us-gaap_IncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesReceivable",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income tax receivable",
        "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes."
       }
      }
     },
     "auth_ref": [
      "r100",
      "r653"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable-trade",
        "label": "Increase (Decrease) in 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": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Accounts receivable-trade",
        "label": "Increase (Decrease) in 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": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued expenses and other liabilities",
        "label": "Increase (Decrease) in Accrued Liabilities",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInDeferredIncomeTaxes",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Income taxes, net",
        "label": "Increase (Decrease) in Deferred Income Taxes",
        "documentation": "The increase (decrease) during the reporting period in the account that represents the temporary difference that results from Income or Loss that is recognized for accounting purposes but not for tax purposes and vice versa."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Inventory",
        "label": "Increase (Decrease) in 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": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changes in operating assets and liabilities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingLeaseLiability",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease liabilities",
        "label": "Increase (Decrease) in Operating Lease Liability",
        "documentation": "Amount of increase (decrease) in obligation for operating lease."
       }
      }
     },
     "auth_ref": [
      "r651",
      "r661"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherCurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOtherCurrentAssets",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other current assets",
        "label": "Increase (Decrease) in Other Current Assets",
        "documentation": "Amount of increase (decrease) in current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r661"
     ]
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOtherNoncurrentAssets",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other assets",
        "label": "Increase (Decrease) in Other Noncurrent Assets",
        "documentation": "Amount of increase (decrease) in noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r661"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInPrepaidExpense",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Prepaid expenses",
        "label": "Increase (Decrease) in Prepaid Expense",
        "documentation": "The increase (decrease) during the reporting period in the amount of outstanding money paid in advance for goods or services that bring economic benefits for future periods."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Stockholders' Equity [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": []
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "calculation": {
      "http://tandyleather.com/role/EarningsPerShareDetails": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dilutive effect of service-based restricted stock awards granted under the Plan (in shares)",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method."
       }
      }
     },
     "auth_ref": [
      "r188",
      "r189",
      "r190",
      "r195",
      "r329"
     ]
    },
    "us-gaap_IntangibleAssetsFiniteLivedPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsFiniteLivedPolicy",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Intangible Assets",
        "documentation": "Disclosure of accounting policy for finite-lived intangible assets. This accounting policy also might address: (1) the amortization method used; (2) the useful lives of such assets; and (3) how the entity assesses and measures impairment of such assets."
       }
      }
     },
     "auth_ref": [
      "r437",
      "r438",
      "r439",
      "r441",
      "r591",
      "r679"
     ]
    },
    "us-gaap_IntellectualPropertyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntellectualPropertyMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trademarks/Copyrights [Member]",
        "label": "Intellectual Property [Member]",
        "documentation": "Intangible asset arising from original creative thought. Include, but is not limited to, trademarks, patents, and copyrights."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r680",
      "r681",
      "r682",
      "r683",
      "r684",
      "r685",
      "r686",
      "r687"
     ]
    },
    "us-gaap_InterestIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestIncomeExpenseNet",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest income",
        "documentation": "Amount of interest income (expense) classified as operating."
       }
      }
     },
     "auth_ref": [
      "r473",
      "r672"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Finished goods held for sale",
        "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": [
      "r654"
     ]
    },
    "tlfa_InventoryMerchandiseExpectedToBeReturned": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "InventoryMerchandiseExpectedToBeReturned",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross amount of merchandise or supplies to which the entity expected returns as of balance sheet date.",
        "label": "Inventory, Merchandise Expected to be Returned",
        "verboseLabel": "Estimate of merchandise expected to be returned"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 8.0
      },
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails",
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory",
        "totalLabel": "Total inventory",
        "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": [
      "r150",
      "r589",
      "r622"
     ]
    },
    "us-gaap_InventoryNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNetAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory on-hand [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory",
        "label": "Inventory, Policy [Policy Text Block]",
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r141",
      "r149",
      "r239",
      "r240",
      "r241",
      "r436",
      "r592"
     ]
    },
    "us-gaap_InventoryWorkInProcessAndRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryWorkInProcessAndRawMaterials",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Raw materials and work in process",
        "label": "Inventory, Work in Process and Raw Materials",
        "documentation": "The aggregate carrying amount as of the balance sheet date of items held by the entity which are partially completed at the time of measurement and unprocessed items that will go through the production process and become part of the final product. Includes supplies used directly or indirectly in the manufacturing or production process. This element may be used when the reporting entity combines work in process and raw materials into an aggregate amount."
       }
      }
     },
     "auth_ref": [
      "r656"
     ]
    },
    "tlfa_JPMorganChaseBankNAMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "JPMorganChaseBankNAMember",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name of lender will provide the line of credit facility under the credit agreement.",
        "label": "JP Morgan Chase Bank, N.A. [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeLeasesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeLeasesPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Leases",
        "label": "Lessee, Leases [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee."
       }
      }
     },
     "auth_ref": [
      "r429"
     ]
    },
    "us-gaap_LesseeOperatingLeaseRenewalTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseRenewalTerm",
     "presentation": [
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease, renewal term",
        "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r735"
     ]
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseTermOfContract",
     "presentation": [
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lease, term of contract",
        "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": [
      "r735"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY",
        "label": "Liabilities and Equity",
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any."
       }
      }
     },
     "auth_ref": [
      "r69",
      "r103",
      "r484",
      "r622",
      "r664",
      "r678",
      "r732"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets",
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "LIABILITIES AND STOCKHOLDERS' EQUITY"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current liabilities",
        "label": "Liabilities, Current",
        "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": [
      "r59",
      "r140",
      "r167",
      "r215",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r401",
      "r402",
      "r403",
      "r414",
      "r622",
      "r696",
      "r737",
      "r738"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "CURRENT LIABILITIES:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilityForUncertainTaxPositionsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilityForUncertainTaxPositionsNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Uncertain tax positions",
        "label": "Liability for Uncertainty in Income Taxes, Noncurrent",
        "documentation": "Amount recognized for uncertainty in income taxes classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r61"
     ]
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityAxis",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lender Name [Axis]",
        "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r60",
      "r663",
      "r694",
      "r695"
     ]
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityLenderDomain",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Lender [Domain]",
        "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r60",
      "r663",
      "r694"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of credit facility, maximum borrowing capacity",
        "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": [
      "r56",
      "r60"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_MachineryAndEquipmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "MachineryAndEquipmentMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equipment and Machinery [Member]",
        "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MaximumMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails",
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "documentation": "Upper limit of the provided range."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r118",
      "r120",
      "r121",
      "r123",
      "r135",
      "r136",
      "r265",
      "r266",
      "r267",
      "r268",
      "r324",
      "r370",
      "r413",
      "r435",
      "r494",
      "r495",
      "r502",
      "r513",
      "r514",
      "r562",
      "r564",
      "r566",
      "r567",
      "r569",
      "r583",
      "r584",
      "r599",
      "r606",
      "r614",
      "r617",
      "r618",
      "r619",
      "r620",
      "r631",
      "r698",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MinimumMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "documentation": "Lower limit of the provided range."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r118",
      "r120",
      "r121",
      "r123",
      "r135",
      "r136",
      "r265",
      "r266",
      "r267",
      "r268",
      "r324",
      "r370",
      "r413",
      "r435",
      "r494",
      "r495",
      "r502",
      "r513",
      "r514",
      "r562",
      "r564",
      "r566",
      "r567",
      "r569",
      "r583",
      "r584",
      "r599",
      "r606",
      "r614",
      "r617",
      "r618",
      "r619",
      "r631",
      "r698",
      "r739",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in financing activities",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r164"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from financing activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided from (used in) investing activities",
        "label": "Net Cash Provided by (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": [
      "r164"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows used investing activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash used in operating activities",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r86",
      "r87"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      },
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows",
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income",
        "totalLabel": "Net income",
        "verboseLabel": "Net income",
        "label": "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": [
      "r79",
      "r87",
      "r105",
      "r138",
      "r154",
      "r156",
      "r161",
      "r167",
      "r173",
      "r175",
      "r176",
      "r177",
      "r178",
      "r179",
      "r182",
      "r183",
      "r192",
      "r215",
      "r271",
      "r272",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r396",
      "r399",
      "r412",
      "r414",
      "r489",
      "r542",
      "r557",
      "r558",
      "r641",
      "r696"
     ]
    },
    "us-gaap_NetIncomeLossAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLossAbstract",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Numerator [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Computation of Earnings Per Share [Abstract]",
        "label": "Net Income (Loss) Available to Common Stockholders, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_NonEmployeeDirectorMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "NonEmployeeDirectorMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Person with designation of non-employee director.",
        "label": "Non-Employee Director [Member]",
        "terseLabel": "Non-Employee Directors [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total other income",
        "label": "Nonoperating 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": [
      "r80"
     ]
    },
    "tlfa_NumberOfClassesOfCustomerDiscounts": {
     "xbrltype": "integerItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "NumberOfClassesOfCustomerDiscounts",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of classes of customer discounts.",
        "label": "Number of Classes of Customer Discounts",
        "terseLabel": "Number of classes of customer discounts"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NumberOfOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NumberOfOperatingSegments",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Number of operating segments",
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues."
       }
      }
     },
     "auth_ref": [
      "r597",
      "r671"
     ]
    },
    "us-gaap_NumberOfReportableSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NumberOfReportableSegments",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Number of reporting segments",
        "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements."
       }
      }
     },
     "auth_ref": [
      "r595",
      "r598",
      "r671"
     ]
    },
    "us-gaap_NumberOfStores": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NumberOfStores",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of stores",
        "label": "Number of Stores",
        "documentation": "Represents the number of stores."
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_NumberOfStoresTemporarilyClosed": {
     "xbrltype": "integerItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "NumberOfStoresTemporarilyClosed",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of stores closed on temporary basis.",
        "label": "Number of Stores Temporarily Closed",
        "terseLabel": "Number of stores temporarily closed"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingCostsAndExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingCostsAndExpenses",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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. Excludes Selling, General and Administrative Expense."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income from operations",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r108",
      "r594",
      "r670",
      "r672",
      "r673",
      "r674",
      "r675"
     ]
    },
    "us-gaap_OperatingIncomeLossAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLossAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income (expense):"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current portion of operating lease liabilities",
        "label": "Operating Lease, Liability, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r427"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease liabilities, non-current",
        "label": "Operating Lease, Liability, Noncurrent",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r427"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease assets",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r426"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating lease asset amortization",
        "documentation": "Amount of periodic reduction over lease term of carrying amount of right-of-use asset from operating lease."
       }
      }
     },
     "auth_ref": [
      "r662"
     ]
    },
    "us-gaap_OtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other current assets",
        "documentation": "Amount of current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r152",
      "r622"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other assets",
        "label": "Other Assets, Noncurrent",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r145"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Foreign currency translation adjustments, net of tax",
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r490"
     ]
    },
    "tlfa_OtherCountriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "OtherCountriesMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All other countries excluding the United States and Canada.",
        "label": "Other Countries [Member]",
        "terseLabel": "Other [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OtherInventoryInTransit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherInventoryInTransit",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesInventoryDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory in transit",
        "documentation": "Gross amount of merchandise or supplies to which the entity holds the title but does not hold physical possession because the goods are currently being transported."
       }
      }
     },
     "auth_ref": [
      "r655"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other non-current liabilities",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r61"
     ]
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other, net (see footnote 8)",
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r81"
     ]
    },
    "us-gaap_PaymentsOfDividendsCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsOfDividendsCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Dividend Paid",
        "label": "Payments of Ordinary Dividends, Common Stock",
        "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity."
       }
      }
     },
     "auth_ref": [
      "r84"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchase of property and equipment",
        "label": "Payments to Acquire Property, Plant, 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": [
      "r83"
     ]
    },
    "tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "PerformanceBasedRestrictedStockUnitsRSUsMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, when specified performance conditions are met.",
        "label": "Performance Based Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Performance-Based Restricted Stock Units [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r726"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r701",
      "r702",
      "r703",
      "r704",
      "r705",
      "r706",
      "r707",
      "r708",
      "r709",
      "r710",
      "r711",
      "r712",
      "r713",
      "r714",
      "r715",
      "r716",
      "r717",
      "r718",
      "r719",
      "r720",
      "r721",
      "r722",
      "r723",
      "r724",
      "r725",
      "r726"
     ]
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid expenses",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r151",
      "r242",
      "r243",
      "r590"
     ]
    },
    "us-gaap_ProceedsFromLinesOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromLinesOfCredit",
     "crdr": "debit",
     "presentation": [
      "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of credit facility, funds borrowed",
        "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r663"
     ]
    },
    "us-gaap_ProceedsFromSaleOfProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromSaleOfProductiveAssets",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows",
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from Sale of property and equipment. net",
        "label": "Net Proceeds",
        "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets."
       }
      }
     },
     "auth_ref": [
      "r82"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Tangible Asset [Axis]",
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r431"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and equipment, at cost",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r90",
      "r143",
      "r487"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentLineItems",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [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": [
      "r431"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Property and equipment, net",
        "label": "Property, Plant 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": [
      "r6",
      "r431",
      "r477",
      "r487",
      "r622"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNetAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property and Equipment, Net of Accumulated Depreciation [Abstract]",
        "label": "Property, Plant and Equipment, Net [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property and equipment, net of accumulated depreciation",
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r112",
      "r113",
      "r485"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Lived Tangible Asset [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": [
      "r90",
      "r431"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Estimated useful lives of assets",
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment."
       }
      }
     },
     "auth_ref": []
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails",
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "documentation": "Information by statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r118",
      "r120",
      "r121",
      "r123",
      "r135",
      "r136",
      "r265",
      "r266",
      "r267",
      "r268",
      "r323",
      "r324",
      "r356",
      "r357",
      "r358",
      "r370",
      "r413",
      "r433",
      "r434",
      "r435",
      "r494",
      "r495",
      "r502",
      "r513",
      "r514",
      "r562",
      "r564",
      "r566",
      "r567",
      "r569",
      "r583",
      "r584",
      "r599",
      "r606",
      "r614",
      "r617",
      "r618",
      "r619",
      "r620",
      "r631",
      "r635",
      "r692",
      "r698",
      "r729",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails",
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "documentation": "Statistical measurement. Includes, but is not limited to, minimum, maximum, weighted average, arithmetic average, and median."
       }
      }
     },
     "auth_ref": [
      "r116",
      "r118",
      "r120",
      "r121",
      "r123",
      "r135",
      "r136",
      "r265",
      "r266",
      "r267",
      "r268",
      "r323",
      "r324",
      "r356",
      "r357",
      "r358",
      "r370",
      "r413",
      "r433",
      "r434",
      "r435",
      "r494",
      "r495",
      "r502",
      "r513",
      "r514",
      "r562",
      "r564",
      "r566",
      "r567",
      "r569",
      "r583",
      "r584",
      "r599",
      "r606",
      "r614",
      "r617",
      "r618",
      "r619",
      "r620",
      "r631",
      "r635",
      "r692",
      "r698",
      "r729",
      "r740",
      "r741",
      "r742",
      "r743",
      "r744"
     ]
    },
    "tlfa_RestrictedStockAndRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "RestrictedStockAndRestrictedStockUnitsMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met and Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.",
        "label": "Restricted Stock and Restricted Stock Units [Member]",
        "terseLabel": "Restricted Stock and RSU [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RestrictedStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedStockMember",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock [Member]",
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met."
       }
      }
     },
     "auth_ref": [
      "r23"
     ]
    },
    "us-gaap_RestrictedStockUnitsRSUMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedStockUnitsRSUMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock Units [Member]",
        "terseLabel": "Restricted Stock Units (RSUs) [Member]",
        "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",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained earnings",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r97",
      "r483",
      "r499",
      "r501",
      "r506",
      "r523",
      "r622"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r137",
      "r170",
      "r171",
      "r172",
      "r174",
      "r179",
      "r181",
      "r183",
      "r216",
      "r217",
      "r256",
      "r386",
      "r387",
      "r393",
      "r394",
      "r395",
      "r397",
      "r398",
      "r399",
      "r404",
      "r406",
      "r407",
      "r409",
      "r410",
      "r424",
      "r425",
      "r496",
      "r498",
      "r508",
      "r779"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue Recognition [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails",
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net sales",
        "terseLabel": "Sales",
        "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": [
      "r106",
      "r107",
      "r200",
      "r203",
      "r204",
      "r206",
      "r208",
      "r209",
      "r210",
      "r212",
      "r319",
      "r320",
      "r440"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue Recognition",
        "documentation": "Disclosure of accounting policy for revenue from contract with customer."
       }
      }
     },
     "auth_ref": [
      "r115",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r586"
     ]
    },
    "tlfa_RevenueRecognitionDiscountsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "RevenueRecognitionDiscountsPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for sales discounts.",
        "label": "Revenue Recognition, Discounts [Policy Text Block]",
        "terseLabel": "Discounts"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "SALESOFCORPORATEHEADQUARTERSNEWCEOEMPLOYMENTAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "SHAREREPURCHASEPROGRAMANDSHAREREPURCHASESAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_SalesAndDisposalOfHeadquarterAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "SalesAndDisposalOfHeadquarterAbstract",
     "presentation": [
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales and Disposal of Headquarter [Abstract]",
        "terseLabel": "Sales and Disposal of Headquarter [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock",
     "presentation": [
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmployment"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for sales of corporate headquarters and new CEO employment.",
        "label": "Sales of Corporate Headquarters and New CEO Employment [Text Block]",
        "terseLabel": "SALES OF CORPORATE HEADQUARTERS &amp; NEW CEO EMPLOYMENT"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SalesRevenueNetMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SalesRevenueNetMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Sales [Member]",
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation."
       }
      }
     },
     "auth_ref": [
      "r212",
      "r649"
     ]
    },
    "us-gaap_ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock",
     "presentation": [
      "http://tandyleather.com/role/SalesOfCorporateHeadquartersNewCeoEmploymentTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sale and Disposal of Headquarter",
        "label": "Disposal Groups, Including Discontinued Operations [Table Text Block]",
        "documentation": "Tabular disclosure of information related to a disposal group. Includes, but is not limited to, a discontinued operation, disposal classified as held-for-sale or disposed of by means other than sale or disposal of an individually significant component."
       }
      }
     },
     "auth_ref": [
      "r8",
      "r11",
      "r14",
      "r46",
      "r47",
      "r48",
      "r49",
      "r50",
      "r51",
      "r52",
      "r53",
      "r54",
      "r91"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Computation of Basic and Diluted EPS",
        "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": [
      "r669"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareDilutedByCommonClassTable",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table]",
        "documentation": "Disclosure of information about diluted earnings per share by class of stock. Includes, but is not limited to, two-class method."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r24",
      "r187",
      "r191",
      "r193"
     ]
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesOtherIntangibleAssetsDetails"
     ],
     "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": [
      "r244",
      "r250",
      "r253",
      "r254",
      "r255",
      "r441",
      "r585",
      "r600"
     ]
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "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": [
      "r16",
      "r70",
      "r71",
      "r72"
     ]
    },
    "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfPropertyPlantAndEquipmentTable",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Table]",
        "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation."
       }
      }
     },
     "auth_ref": [
      "r6",
      "r431"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "documentation": "Disclosure of information about profit (loss) and total assets by reportable segment."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r29",
      "r30"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails",
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "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": [
      "r326",
      "r328",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359"
     ]
    },
    "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Activity of Restricted Stock and RSU Awards",
        "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-vested, Service-based Awards",
        "documentation": "Tabular disclosure of cost not yet recognized and weighted-average period over which cost is expected to be recognized for nonvested award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r98"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r643"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r645"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]",
        "documentation": "Geographical area."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r119",
      "r122",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r134",
      "r210",
      "r211",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r510",
      "r511",
      "r512",
      "r563",
      "r565",
      "r568",
      "r570",
      "r571",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r587",
      "r608",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r632",
      "r635",
      "r700",
      "r746",
      "r749",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775"
     ]
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingInformationLineItems",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting Information [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_SellingGeneralAndAdministrativeExpensesPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingGeneralAndAdministrativeExpensesPolicyTextBlock",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating expenses",
        "label": "Selling, General and Administrative Expenses, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for inclusion of significant items in the selling, general and administrative (or similar) expense report caption."
       }
      }
     },
     "auth_ref": [
      "r727"
     ]
    },
    "tlfa_ServicedBasedRestrictedStockUnitsRSUsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "ServicedBasedRestrictedStockUnitsRSUsMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "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": "Serviced Based Restricted Stock Units (RSUs) [Member]",
        "terseLabel": "Service-Based Restricted Stock Units [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "us-gaap_ShareBasedCompensationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationAbstract",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Compensation Expense [Abstract]",
        "label": "Share-Based Payment Arrangement, Noncash Expense [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAdditionalGeneralDisclosuresAbstract",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restricted Stock Plan [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting period from grant date",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period",
        "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": [
      "r615"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Forfeited (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r348"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forfeited (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value",
        "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event."
       }
      }
     },
     "auth_ref": [
      "r348"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Granted (in shares)",
        "verboseLabel": "Number of restricted stock units 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": [
      "r346"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r346"
     ]
    },
    "tlfa_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of grants pending approval during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants Pending Approval",
        "terseLabel": "Grants pending approval (in shares)"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance (in shares)",
        "periodEndLabel": "Balance (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number",
        "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": [
      "r343",
      "r344"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Shares [Roll Forward]",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [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": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodEndLabel": "Balance (in dollars per share)",
        "periodStartLabel": "Balance (in dollars per share)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value",
        "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r343",
      "r344"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Share Price [Abstract]",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Vested (in shares)",
        "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period",
        "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period."
       }
      }
     },
     "auth_ref": [
      "r347"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "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": [
      "r347"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails",
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [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": [
      "r326",
      "r328",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails",
      "http://tandyleather.com/role/StockbasedCompensationSummaryOfActivityForNonvestedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359"
     ]
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Share-Based Payment Arrangement [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost."
       }
      }
     },
     "auth_ref": [
      "r325",
      "r334",
      "r353",
      "r354",
      "r355",
      "r356",
      "r359",
      "r365",
      "r366",
      "r367",
      "r368"
     ]
    },
    "us-gaap_ShareBasedPaymentArrangementEmployeeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedPaymentArrangementEmployeeMember",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Key Employees [Member]",
        "terseLabel": "Employees [Member]",
        "label": "Share-Based Payment Arrangement, Employee [Member]",
        "documentation": "Recipient, of award granted under share-based payment arrangement, over whom grantor exercises or has right to exercise sufficient control to establish employer-employee relationship based on law of pertinent jurisdiction. Includes, but is not limited to, nonemployee director treated as employee when acting as member of board of directors, if elected by grantor's shareholders or appointed to board position to be filled by shareholder election when existing term expires."
       }
      }
     },
     "auth_ref": [
      "r328",
      "r331",
      "r332",
      "r333",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359"
     ]
    },
    "tlfa_ShareRepurchaseProgramAndShareRepurchasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "ShareRepurchaseProgramAndShareRepurchasesTextBlock",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchases"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the share repurchase program and share repurchases.",
        "label": "Share Repurchase Program and Share Repurchases [Text Block]",
        "terseLabel": "SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES"
       }
      }
     },
     "auth_ref": []
    },
    "srt_ShareRepurchaseProgramAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramAxis",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Axis]",
        "documentation": "Information by share repurchase program."
       }
      }
     },
     "auth_ref": [
      "r699"
     ]
    },
    "srt_ShareRepurchaseProgramDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramDomain",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share Repurchase Program [Domain]",
        "documentation": "Name of share repurchase program."
       }
      }
     },
     "auth_ref": [
      "r699"
     ]
    },
    "tlfa_ShareRepurchaseProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "ShareRepurchaseProgramMember",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the share repurchase program.",
        "label": "Share Repurchase Program [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesIssued",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Balance (in shares)",
        "periodEndLabel": "Balance (in shares)",
        "label": "Shares, Issued",
        "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r64",
      "r67",
      "r68",
      "r137",
      "r159",
      "r160",
      "r161",
      "r170",
      "r171",
      "r172",
      "r174",
      "r179",
      "r181",
      "r183",
      "r201",
      "r216",
      "r217",
      "r256",
      "r307",
      "r386",
      "r387",
      "r393",
      "r394",
      "r395",
      "r397",
      "r398",
      "r399",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r417",
      "r418",
      "r419",
      "r420",
      "r421",
      "r422",
      "r424",
      "r425",
      "r432",
      "r490",
      "r496",
      "r497",
      "r498",
      "r508",
      "r559"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]",
        "documentation": "Information by geographical components."
       }
      }
     },
     "auth_ref": [
      "r117",
      "r119",
      "r122",
      "r124",
      "r125",
      "r126",
      "r127",
      "r128",
      "r129",
      "r130",
      "r131",
      "r132",
      "r133",
      "r134",
      "r210",
      "r211",
      "r443",
      "r444",
      "r445",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r451",
      "r452",
      "r453",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r460",
      "r461",
      "r462",
      "r463",
      "r464",
      "r465",
      "r466",
      "r467",
      "r468",
      "r469",
      "r470",
      "r471",
      "r472",
      "r510",
      "r511",
      "r512",
      "r563",
      "r565",
      "r568",
      "r570",
      "r571",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r587",
      "r608",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r632",
      "r635",
      "r700",
      "r746",
      "r749",
      "r750",
      "r751",
      "r752",
      "r753",
      "r754",
      "r755",
      "r756",
      "r757",
      "r758",
      "r759",
      "r760",
      "r761",
      "r762",
      "r763",
      "r764",
      "r765",
      "r766",
      "r767",
      "r768",
      "r769",
      "r770",
      "r771",
      "r772",
      "r773",
      "r774",
      "r775"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r170",
      "r171",
      "r172",
      "r201",
      "r425",
      "r440",
      "r504",
      "r509",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r522",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r541",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r559",
      "r636"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Balance Sheets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Consolidated Statements of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "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": [
      "r170",
      "r171",
      "r172",
      "r201",
      "r213",
      "r425",
      "r440",
      "r504",
      "r509",
      "r515",
      "r516",
      "r517",
      "r518",
      "r519",
      "r520",
      "r522",
      "r525",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r541",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r549",
      "r550",
      "r551",
      "r552",
      "r553",
      "r554",
      "r555",
      "r556",
      "r559",
      "r636"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity",
      "http://tandyleather.com/role/StockbasedCompensationNonvestedServicebasedRestrictedStockUnitAwardsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Vesting of restricted stock units (in shares)",
        "terseLabel": "Number of shares issued from vesting of restricted stock (in shares)",
        "label": "Stock Issued During Period, Shares, Restricted Stock Award, Gross",
        "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r97"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting of restricted stock units",
        "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r63",
      "r64",
      "r97"
     ]
    },
    "tlfa_StockRepurchaseProgramAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "StockRepurchaseProgramAbstract",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Repurchase Program [Abstract]",
        "terseLabel": "Share Repurchase Program and Share Repurchases [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_StockRepurchaseProgramAuthorizedAmount1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "StockRepurchaseProgramAuthorizedAmount1",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Repurchase of common stock",
        "label": "Share Repurchase Program, Authorized, Amount",
        "documentation": "Amount authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership."
       }
      }
     },
     "auth_ref": [
      "r699"
     ]
    },
    "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1",
     "crdr": "credit",
     "presentation": [
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Remaining repurchase of common stock",
        "documentation": "Amount remaining authorized for purchase of share under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets",
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total stockholders' equity",
        "periodStartLabel": "Balance",
        "periodEndLabel": "Balance",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r67",
      "r68",
      "r89",
      "r524",
      "r540",
      "r560",
      "r561",
      "r622",
      "r642",
      "r664",
      "r678",
      "r732",
      "r779"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets",
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "STOCKHOLDERS' EQUITY:"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TaxesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TaxesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income taxes payable",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r58"
     ]
    },
    "srt_TitleOfIndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "TitleOfIndividualAxis",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Axis]",
        "documentation": "Information by title and position of individual or group within organization."
       }
      }
     },
     "auth_ref": [
      "r676",
      "r736"
     ]
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "presentation": [
      "http://tandyleather.com/role/EarningsPerShareDetails",
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title and Position [Domain]",
        "documentation": "Title and position of individual or group within organization."
       }
      }
     },
     "auth_ref": []
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "TradingSymbol",
     "presentation": [
      "http://tandyleather.com/role/DocumentAndEntityInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock [Member]",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r34"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury stock, shares (in shares)",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r34"
     ]
    },
    "us-gaap_TreasuryStockCommonValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonValue",
     "crdr": "debit",
     "calculation": {
      "http://tandyleather.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedBalanceSheets",
      "http://tandyleather.com/role/ShareRepurchaseProgramAndShareRepurchasesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Treasury stock at cost (1,424,376 shares at March 31, 2025 and December 31, 2024)",
        "terseLabel": "Share repurchase amount",
        "label": "Treasury Stock, Common, Value",
        "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r37",
      "r67"
     ]
    },
    "tlfa_TwoThousandAndThirteenRestrictedStockPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "TwoThousandAndThirteenRestrictedStockPlanMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to 2013 Restricted stock plan.",
        "label": "Two Thousand and Thirteen Restricted Stock Plan [Member]",
        "terseLabel": "2013 Restricted Stock Plan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "tlfa_TwoThousandAndTwentyThreeRestrictedStockPlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://tandyleather.com/20250331",
     "localname": "TwoThousandAndTwentyThreeRestrictedStockPlanMember",
     "presentation": [
      "http://tandyleather.com/role/StockbasedCompensation2013And2023RestrictedStockPlansDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Refers to 2023 Restricted stock plan.",
        "label": "Two Thousand and Twenty Three Restricted Stock Plan [Member]",
        "terseLabel": "2023 Restricted Stock Plan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2024",
     "localname": "US",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesBasisOfPresentationDetails",
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesRevenueRecognitionAndDiscountsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "United States [Member]",
        "label": "UNITED STATES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VehiclesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VehiclesMember",
     "presentation": [
      "http://tandyleather.com/role/BasisOfPresentationAndCertainSignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vehicles [Member]",
        "documentation": "Equipment used primarily for road transportation."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "calculation": {
      "http://tandyleather.com/role/EarningsPerShareDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Diluted (in shares)",
        "totalLabel": "Diluted weighted-average common shares outstanding (in shares)",
        "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": [
      "r186",
      "r195"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted average number of shares outstanding:",
        "terseLabel": "Denominator [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "calculation": {
      "http://tandyleather.com/role/EarningsPerShareDetails": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome",
      "http://tandyleather.com/role/EarningsPerShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Basic (in shares)",
        "terseLabel": "Basic weighted-average common shares outstanding (in shares)",
        "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": [
      "r185",
      "r195"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482338/360-10-05-4"
  },
  "r1": {
   "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"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r3": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A"
  },
  "r4": {
   "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"
  },
  "r5": {
   "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"
  },
  "r6": {
   "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"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "825",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-1"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Subparagraph": "(c)(3)",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A"
  },
  "r10": {
   "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"
  },
  "r11": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r12": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "44",
   "SubTopic": "20",
   "Topic": "805",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-44"
  },
  "r13": {
   "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"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-3"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8"
  },
  "r16": {
   "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"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14"
  },
  "r18": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r20": {
   "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"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-1"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r23": {
   "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"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "52",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52"
  },
  "r25": {
   "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"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18"
  },
  "r27": {
   "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"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r32": {
   "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"
  },
  "r33": {
   "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"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-2"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-3"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12"
  },
  "r39": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "810",
   "SubTopic": "10",
   "Section": "55",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "815",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r43": {
   "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"
  },
  "r44": {
   "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"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "470",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483475/205-20-45-11"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-3A"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-4A"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-4B"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5A"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5B"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5C"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-5D"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "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(19)(a))",
   "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(19)(b))",
   "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(19))",
   "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(20))",
   "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(21))",
   "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(22)(b))",
   "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(24))",
   "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(25))",
   "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(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r64": {
   "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"
  },
  "r65": {
   "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"
  },
  "r66": {
   "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"
  },
  "r67": {
   "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"
  },
  "r68": {
   "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"
  },
  "r69": {
   "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"
  },
  "r70": {
   "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"
  },
  "r71": {
   "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"
  },
  "r72": {
   "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"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r77": {
   "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)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r80": {
   "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"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r82": {
   "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"
  },
  "r83": {
   "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"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r85": {
   "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"
  },
  "r86": {
   "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"
  },
  "r87": {
   "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"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/235/tableOfContent"
  },
  "r89": {
   "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"
  },
  "r90": {
   "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"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3A"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480091/360-10-S99-2"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r95": {
   "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"
  },
  "r96": {
   "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "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(10))",
   "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": "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "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"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "270",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482989/270-10-45-6"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-1"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "SubTopic": "360",
   "Topic": "958",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477798/958-360-50-6"
  },
  "r114": {
   "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"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12",
   "Paragraph": "Column C",
   "Footnote": "5",
   "Publisher": "SEC"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12A",
   "Paragraph": "Column C",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(a)",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column A",
   "Subparagraph": "(b)",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "12B",
   "Paragraph": "Column C",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "14",
   "Paragraph": "Column F",
   "Footnote": "7",
   "Publisher": "SEC"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column A",
   "Footnote": "2",
   "Publisher": "SEC"
  },
  "r126": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column B",
   "Publisher": "SEC"
  },
  "r127": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column C",
   "Publisher": "SEC"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column D",
   "Publisher": "SEC"
  },
  "r129": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column E",
   "Publisher": "SEC"
  },
  "r130": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column F",
   "Publisher": "SEC"
  },
  "r131": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column G",
   "Publisher": "SEC"
  },
  "r132": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column H",
   "Publisher": "SEC"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "28",
   "Paragraph": "Column I",
   "Publisher": "SEC"
  },
  "r134": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "12",
   "Subsection": "29",
   "Paragraph": "Column A",
   "Footnote": "4",
   "Publisher": "SEC"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 2",
   "Publisher": "SEC"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Staff Accounting Bulletin (SAB)",
   "Number": "Topic 5",
   "Section": "Y",
   "Paragraph": "Question 4",
   "Publisher": "SEC"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r140": {
   "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"
  },
  "r141": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r142": {
   "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"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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(30)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r148": {
   "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(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A"
  },
  "r156": {
   "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"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-1"
  },
  "r159": {
   "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"
  },
  "r160": {
   "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"
  },
  "r161": {
   "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"
  },
  "r162": {
   "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(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r163": {
   "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "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"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/260/tableOfContent"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22"
  },
  "r189": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23"
  },
  "r190": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-3"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41"
  },
  "r212": {
   "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"
  },
  "r213": {
   "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"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479391/326-20-30-4A"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "5A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479391/326-20-30-5A"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479366/326-20-35-8A"
  },
  "r221": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-5"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r226": {
   "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"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-17"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-21"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-3C"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-3D"
  },
  "r231": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.M.2.Q4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483530/326-20-S99-1"
  },
  "r232": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "30",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479175/326-30-30-1B"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "13A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479148/326-30-35-13A"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479148/326-30-35-7A"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-3A"
  },
  "r236": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-3C"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-3D"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-1"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-4"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r284": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r285": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1B",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r296": {
   "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"
  },
  "r297": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1E",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E"
  },
  "r298": {
   "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"
  },
  "r299": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r302": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1F",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1I",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2"
  },
  "r310": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-3"
  },
  "r311": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-17"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-18"
  },
  "r313": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-18"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-19"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r316": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-20"
  },
  "r319": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r322": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "606",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r326": {
   "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"
  },
  "r327": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2"
  },
  "r328": {
   "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"
  },
  "r329": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1"
  },
  "r330": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "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": "(a)(1)",
   "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": "(a)(2)",
   "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": "(a)(3)",
   "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": "(b)",
   "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": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r354": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r362": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r363": {
   "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"
  },
  "r364": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r365": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.C.Q3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r366": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.1.Q5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r367": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.2.Q6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r368": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.D.3.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r369": {
   "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"
  },
  "r370": {
   "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"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-25"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-28"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-19"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "20",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-20"
  },
  "r384": {
   "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"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "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"
  },
  "r406": {
   "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"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "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"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/830/tableOfContent"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "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"
  },
  "r425": {
   "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"
  },
  "r426": {
   "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"
  },
  "r427": {
   "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"
  },
  "r428": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-1"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "912",
   "SubTopic": "330",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478411/912-330-50-1"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "920",
   "SubTopic": "350",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478609/920-350-50-1"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "920",
   "SubTopic": "350",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478609/920-350-50-1"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "920",
   "SubTopic": "350",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478609/920-350-50-4"
  },
  "r440": {
   "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"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18"
  },
  "r447": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19"
  },
  "r448": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r449": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r453": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r455": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r457": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r458": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r459": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "31",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r461": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5"
  },
  "r466": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6"
  },
  "r467": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "280",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "932",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1"
  },
  "r473": {
   "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(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r474": {
   "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(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r475": {
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "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"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "470",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477734/942-470-50-3"
  },
  "r479": {
   "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"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "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)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r486": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r487": {
   "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"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r490": {
   "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"
  },
  "r491": {
   "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(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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"
  },
  "r494": {
   "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"
  },
  "r495": {
   "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"
  },
  "r496": {
   "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"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r500": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(h)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "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"
  },
  "r516": {
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "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"
  },
  "r525": {
   "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"
  },
  "r526": {
   "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"
  },
  "r527": {
   "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"
  },
  "r528": {
   "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"
  },
  "r529": {
   "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"
  },
  "r530": {
   "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"
  },
  "r531": {
   "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"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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"
  },
  "r540": {
   "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"
  },
  "r541": {
   "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"
  },
  "r542": {
   "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"
  },
  "r543": {
   "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"
  },
  "r544": {
   "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"
  },
  "r545": {
   "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"
  },
  "r546": {
   "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"
  },
  "r547": {
   "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"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "r552": {
   "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"
  },
  "r553": {
   "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "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"
  },
  "r556": {
   "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"
  },
  "r557": {
   "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"
  },
  "r558": {
   "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"
  },
  "r559": {
   "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"
  },
  "r560": {
   "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"
  },
  "r561": {
   "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"
  },
  "r562": {
   "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"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r564": {
   "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"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r569": {
   "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"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1"
  },
  "r583": {
   "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"
  },
  "r584": {
   "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"
  },
  "r585": {
   "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"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(e)",
   "SubTopic": "10",
   "Topic": "235",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "13H",
   "Subparagraph": "(b)",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H"
  },
  "r588": {
   "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"
  },
  "r589": {
   "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"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4"
  },
  "r593": {
   "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"
  },
  "r594": {
   "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"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r596": {
   "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"
  },
  "r597": {
   "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"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r599": {
   "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"
  },
  "r600": {
   "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"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r602": {
   "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"
  },
  "r603": {
   "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"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "69F",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F"
  },
  "r606": {
   "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"
  },
  "r607": {
   "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"
  },
  "r608": {
   "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"
  },
  "r609": {
   "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"
  },
  "r610": {
   "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"
  },
  "r611": {
   "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"
  },
  "r612": {
   "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"
  },
  "r613": {
   "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"
  },
  "r614": {
   "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"
  },
  "r615": {
   "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"
  },
  "r616": {
   "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"
  },
  "r617": {
   "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"
  },
  "r618": {
   "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"
  },
  "r619": {
   "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"
  },
  "r620": {
   "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"
  },
  "r621": {
   "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"
  },
  "r622": {
   "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"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "932",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6"
  },
  "r631": {
   "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"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r633": {
   "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"
  },
  "r634": {
   "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"
  },
  "r635": {
   "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"
  },
  "r636": {
   "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"
  },
  "r637": {
   "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"
  },
  "r638": {
   "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"
  },
  "r639": {
   "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"
  },
  "r640": {
   "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"
  },
  "r641": {
   "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"
  },
  "r642": {
   "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"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r647": {
   "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"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r649": {
   "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"
  },
  "r650": {
   "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"
  },
  "r651": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(1)",
   "SubTopic": "20",
   "Topic": "842",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r652": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-X (SX)",
   "Number": "210",
   "Section": "6",
   "Subsection": "04",
   "Paragraph": "12",
   "Subparagraph": "(b)(1)",
   "Publisher": "SEC"
  },
  "r653": {
   "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(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r654": {
   "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"
  },
  "r655": {
   "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))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r656": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r657": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r658": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r659": {
   "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"
  },
  "r660": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r661": {
   "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"
  },
  "r662": {
   "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"
  },
  "r663": {
   "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"
  },
  "r664": {
   "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"
  },
  "r665": {
   "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"
  },
  "r666": {
   "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"
  },
  "r667": {
   "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"
  },
  "r668": {
   "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"
  },
  "r669": {
   "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"
  },
  "r670": {
   "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"
  },
  "r671": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18"
  },
  "r672": {
   "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"
  },
  "r673": {
   "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"
  },
  "r674": {
   "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"
  },
  "r675": {
   "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"
  },
  "r676": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r677": {
   "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"
  },
  "r678": {
   "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"
  },
  "r679": {
   "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"
  },
  "r680": {
   "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"
  },
  "r681": {
   "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"
  },
  "r682": {
   "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"
  },
  "r683": {
   "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"
  },
  "r684": {
   "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"
  },
  "r685": {
   "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"
  },
  "r686": {
   "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"
  },
  "r687": {
   "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"
  },
  "r688": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482130/360-10-45-5"
  },
  "r689": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1"
  },
  "r690": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3"
  },
  "r691": {
   "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"
  },
  "r692": {
   "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"
  },
  "r693": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r694": {
   "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"
  },
  "r695": {
   "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"
  },
  "r696": {
   "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"
  },
  "r697": {
   "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"
  },
  "r698": {
   "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"
  },
  "r699": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r700": {
   "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"
  },
  "r701": {
   "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"
  },
  "r702": {
   "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"
  },
  "r703": {
   "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"
  },
  "r704": {
   "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"
  },
  "r705": {
   "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"
  },
  "r706": {
   "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"
  },
  "r707": {
   "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"
  },
  "r708": {
   "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"
  },
  "r709": {
   "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"
  },
  "r710": {
   "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"
  },
  "r711": {
   "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"
  },
  "r712": {
   "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"
  },
  "r713": {
   "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"
  },
  "r714": {
   "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"
  },
  "r715": {
   "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"
  },
  "r716": {
   "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"
  },
  "r717": {
   "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"
  },
  "r718": {
   "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"
  },
  "r719": {
   "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"
  },
  "r720": {
   "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"
  },
  "r721": {
   "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"
  },
  "r722": {
   "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"
  },
  "r723": {
   "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"
  },
  "r724": {
   "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"
  },
  "r725": {
   "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"
  },
  "r726": {
   "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"
  },
  "r727": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "720",
   "SubTopic": "35",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483406/720-35-50-1"
  },
  "r728": {
   "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"
  },
  "r729": {
   "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"
  },
  "r730": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r731": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r732": {
   "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"
  },
  "r733": {
   "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"
  },
  "r734": {
   "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"
  },
  "r735": {
   "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"
  },
  "r736": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-2"
  },
  "r737": {
   "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"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r740": {
   "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"
  },
  "r741": {
   "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"
  },
  "r742": {
   "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"
  },
  "r743": {
   "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"
  },
  "r744": {
   "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"
  },
  "r745": {
   "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)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r746": {
   "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"
  },
  "r747": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r748": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3"
  },
  "r749": {
   "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"
  },
  "r750": {
   "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"
  },
  "r751": {
   "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"
  },
  "r752": {
   "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"
  },
  "r753": {
   "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"
  },
  "r754": {
   "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"
  },
  "r755": {
   "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"
  },
  "r756": {
   "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"
  },
  "r757": {
   "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"
  },
  "r758": {
   "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"
  },
  "r759": {
   "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"
  },
  "r760": {
   "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"
  },
  "r761": {
   "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"
  },
  "r762": {
   "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"
  },
  "r763": {
   "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"
  },
  "r764": {
   "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"
  },
  "r765": {
   "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"
  },
  "r766": {
   "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"
  },
  "r767": {
   "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"
  },
  "r768": {
   "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"
  },
  "r769": {
   "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"
  },
  "r770": {
   "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"
  },
  "r771": {
   "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"
  },
  "r772": {
   "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"
  },
  "r773": {
   "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"
  },
  "r774": {
   "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"
  },
  "r775": {
   "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"
  },
  "r776": {
   "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"
  },
  "r777": {
   "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(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r778": {
   "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"
  },
  "r779": {
   "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"
  },
  "r780": {
   "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"
  },
  "r781": {
   "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>56
<FILENAME>0001140361-25-018382-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001140361-25-018382-xbrl.zip
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
MF3XYH__Y1X9@]$OF_)"V>?#K#3K%@EO>.&AWO1\4.+-7S*/6]<PL6)F$2R9
M.:\YF6X<<ZL&2<Y[H^/N_6@"M)=VK+K3SSY6W2JRHB,W>AE+Y[@]_.SG, <A
M%%2*H%#O*(Y/<N'\Y\9)QJ?.G)GD.:15: CW1?2EG>CHP24;9XYQ A^U=Q1D
MO4_?^>9<_,RKJ:#MM7):A*]W2DJ+N?ZR7Z3P% 68X<?WL<AY!1;7D,'?0!
MX_5%%A>6_$6EM5>/SH2Z"Y0_IVPE7[D.2TE%(1UO'N^=QMS755SV8W,%/LS/
M'K\&S@/Z<1>[*[V0G4F-WI;[NTXH3-/N-\X@2YVE 9$L"+*DW96 $8ZHX,[:
M("@RDD@(L4508<F5620<ZU,L#H!%(7\K>!!I\%VTNR;X$W@#@*\-G1]MJ L9
M30-@G_9[I%^"GO/<#,0*"AQJ$@$ID ,;D])BAI"4"P6S/W_:(PC=WIGI1N2
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
M=34C7%-$_]P"2?4$*A.@"R*CO*&ZC)BQC&;E2F;E,J=B? Q$?&-/_G.E/S1
MYB;A. =V<Z36.%5O ,9+SJ":'XJTZ!/'#=*!Q:;AHD#WS=')A?L8P#?!6>*%
M?6:T_U3$SXLJBN&/@J=?!:^^=D17.RFO7[\I65J+(G$F-SZ'];9&2I7R<6&R
MVB3!K(<M*^$[Z\$;E&^5;%&"\,9Y=-8$"CP\FT<K[XQ:F2-Y)]Z+) TY^_+J
M]MQY0,4_OM^><XH^GE_>G'_TGVZN/E]\//7M:9_4:=&H]C?O-SE>OCS]^M&W
MKWT]DY4KMX,,;BS-Y9/TM2@4V6X4QJ$IWCIQ^(O2PK^)CNB=4I7YMO#=H@6C
MZ.C3OBI&;X*G(<-=^4]#BQKNTXYH/V9QD>A_TM!>A??*A?R8:Y-UVWDQY.K!
M]!RF[)GJ>C9)58)N=4Z'K#:4V+#T5$"B^4I[10_1^X(7%V^N?+ZVPDD<>HG%
M@!$/<1$_< E2[LU_=4)&>(>$O":JW6<2G<OK6U4P:]0EG\TWT?Z2)LH4V^#*
M[EQQ*RC?VZ3D;WBCX8V:\<9UG/WN:S63](DM3M\$_G(PN-ZP1,,2+X@EOG:>
MNKC<B+;)$GO^KVZ</SZY'N4A03'&^P^]4>7N!-[!^)H5#6/Z.B8+:LI-NXS(
M-]QTN-QT_O,NEO%3##U\$PPO-:S0L,)P)JN2_#38+@J!E<E_Y&6+L,+-Q5\O
M3V^_7OL@]-/GFC)!N!2&1[Z.[T+L+:0I#MF3XI!Y=3TS]YUXI$[=@_.<G3VC
MI8>SFHR-O[^W^:6W"6CR4)+%"&SR"+T1 AFE-\<]E9UI9X!G")J)#4G!8$?2
M"$K&=X -=Q<51323X)VV-VG%K4@3NX]&L5)^Q00Z_E8<\3E9'/XD)R=K%B>P
M-@L+OEU;K";0=W1R6]0Y%9O^'*5T\J=6FN)Y1#][LQ7L;;8J3C/U_>2ZGNU$
M^OA4*N";/(FT:-'T*4E_N(_'GY/D]Z);YE,Y@7<F+CJ]+8_N":-3>?_T=\4.
M[^E,L_(&X>D@GTBU^Z9_-FFWDQ]^17J8HVGY8VU^^"W#[M_>B0M%HX=^VY^B
MH55Q!*7?)-$J]HJ*N%.T2RM@U.[#*'N"4=&[RE&1WS(>)-VTA-&'MA.[K<"X
M]3H ]ITS:=JQL<-F:Z>=QWY/J^FO>#5L]-P*9#<OMJ6WXWM?YA'D26MD-DEO
MI[JU10<X/[=;]];'X+,1Q7)[$9;'EL.K>N-[>A4]AVX_?^KW%WKM]ZO[LW[N
MA[FN89NC3A[[?NEN)>,-CGHK';LX7/?$C9\/;G83EPO(?'\:7H)D?T3LF4AG
M(UV3>EC,'#C:(@W<HWW#8X_0U[WEB]04 "L!R6':(=J!P3>%"/R1Q;XA6;?M
MD>-QGL6Z<+-GH,2_^>DW3G@6&\[=;__9[?0V,!<] !P]+%"UXQ]6G+W<:SG@
M"*5/>*66 4%@VIGYX=9J_)L*2NUU*1E0DJ/YS,R<L_OIO9.$3LKZ:J+N@YOE
M_61&4_7:I VIMT!6+TE9HF7/25GW_J''.R7"]G-7)NWXE]NN-WM\=SK__OC^
MP>^&=M>[E0!4;H*VZ]O92:-$O^G"HUOM]Z3]W90@D<;9[[TG=/VK/*1\[&,
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
MLQA71NBPF7+_'.2KHMN]ZJ:I&]Q/-]9#[3?^P0"M2\N# JEG/9Q.E-Y;0S%
M)H0D$B145)C(>0&1UAA&%AF^F5J?>24'=1 "-5._#0.,R[7U:,N9W$$XM"%
MG#"!"9&8$<H9-Q8;1^505P24-NPG-TYRS9SD83;Z03PVJ>@Z3&H[KO+*&:\O
M/3HI"1G%0\&DQA%BE@@+I!01 SP*N92:TC7V8UHP$7TPOG(5XA;);#6\N<^\
MN:%4=07C"DBMM9@9)8FUD'')(,,<&4@!D=NW#N A<^Y+3%@[VDN[YBD$7Y3^
M)H637BH KH=$:QR4 :)7DC$>SY^?<%I.UDF&&"<$1" BDEOGA" AK41 (HO)
MU@O56+1?W6QJ; 4T/#/ R/J5]G2&\EMIPM Z2UL30J7F #)%P@@381@6%?O;
M-I[])G4-A1^D>MY"7."BM#^WY1O=UT/@-&Y'?;+G%1L#RWVHG'YWZMY)'\.)
M0(QAH"(M96@0E%:L,3"_8%2@Q6I;HM,DT1O^6W-:8#9S6LXTMU@"9YD3PI!D
M(<=,0B&Q%LJN\6B<!2V(L*Y];%YX*KU)H=?1V5C>GRBP>9ETU+0T>N0[1$:6
M&V()A9IQK"@1802I(!17%-1NIF4&!365 XUKOK?<LF;7?!XK*>S;KV+N>V$0
M+MW_D$98,Z:TM 97'!FYD=U?C4.^38>\\B3L37OI035HQL]<J%VD?7EH[<ZS
MF'?>>UU]CV?->PM"=*0G_B#,^5@.<K+0M]94PD228%_!)(&O\-.424E"N/V]
M<#BLZP[W)?EIFS*X$2>-.*F#.(D0+<Z+(TB[OPSAU#BAP&!HH)!&XFU'/!BO
MJX%68V&R8X-NZ555M$ -)OJD'IW<)KEH!^+IS.$:R]4Z"\]:2\CUB\'2(=6W
MR?7@B.J1T]!ODS.1W7U)D^^Q-OK#X]?,1X2'TO)T>$AUN5S#81T#B'Q(F$@0
M"L6XEA+S,((<L I)N6'#"[<0W"MA^0+,JT8,;$\,[$0*A#0DC%*"#(<D=%+
M&LB@@IA0(PVM.$9H(U$LNE\^5XU20I.+6D,!B74X/_YA/-G[-[6U&^Y(+5".
MOH)N5O1U+_=['5+6&MNY-^GK+8FR]7ETP0C==#S#M^?;-XZPEI=;"@D+(F4)
MH( (8"5F(=8A,U$$L2);[]Q <=4A:'408)MVZ:8@O2Y632,):B0)-B (M-\/
M'@D46?>!(B9"8TEDF3(1$HI4[$K;3!/&%F '(P%V7]O2;%_?)N?O27OP!OTO
M&OU;C IO+*,?34_H!U5.E]>'@6TG/[*!V_7=9&,^5TW.U6@LK?586C4$5=VD
M]+[!KR&U_;=(-R7VCTZ^=%-UYPNX$AL\I#ZJEC\6&ZC-O[KQ@X_XUD/ OU#;
M:-WIO"_BL1_%/U4.P:GYTL?YE[;HY*<=?3Y ^\A64"B=:PNU)(PPJH4&D=*0
M(QB%!K.M'778PK4]_N.PLG$-L^V0V2BE(81<2:T)%D9:&-HPU$SS"-EP>R&E
M?>O*OQ%F>ZZ27_%XY*6+#1UE*6-T%M@TN0]N'(JG*_0W?J=UQ7'(*V)R;0>P
M;K?"<FUG;^ZNVG)]Y[8^:PUSA&"?,C\YPO1T>67=%=WU 00SL:T%2RZQ4"RB
M0!*$B.1:(J(E1=CHD%<4!&S$TD"DQ2I/=]\II:VG9K(>ARTWO/[B>9UH0C@&
MC!'B^\!% DMCE(2(86ZUW= 6MEJ?X[Q)#M]PN&)F)= S,[CC-4 /_1QMS]AY
MU8]-OZZ,3]>D)JCQJ)9'^_,2]Q<#8JA,W)/(1L18@Z%V]H7FC%(CA(2"H@B&
M<(V'H,TV-'"+AG7-W-<L[MZPT#-8:+4JN-D\!""T$$DI+-"$,\(@L1QQBQ P
MQ,J*S9.;[A!WX"&+9Q2[U21]W23MFJ1=DQ^N%_P:4JMG?GBUT/%SMX_VD\6%
MIK'B/FX_O@O^<AO?.T_JTOP(KI-[T?E+E7]6E7,>*2$JG#4;=T1';:R$:%WQ
MJ7K$FVH2,JH',.H<SJP'A!IR:8H[CT[Z26>?_NL)6]/OT)1(-ROA?:*Z;/W?
M,^U?5T-IZ<3W[%C IQ[5%$U.OJ2QT]8/HCTH92@W.^$T"H76+,(1B;201G,#
M(\"80)!KLYD0VCX<BMCX*@T+/J]R:%$>!(H;:2","-($@$ABQY,,J2@"!)JH
MHJ/J9HJ%#H41E\;CGM40S;<Q1D \ %HO1[R@5YC%_W8@A:"P1C[&/J#<T<$7
M$>OZ^7F;:#NRH6(#-[-^DGZ,!&MA]"\\VP5+)J_L@'*RL^3^/NG<Y(GZO9S
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
M(62C?VQ#QSA&/(R5%I$DQ(^#A"H@3B:],&:)(#L[T[[>T-) OM\F^1Z6'MU
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
ML&A=OBT>:W:3CN]_=/[797JC"N>]NG,^9C=L\K_@@7]7Q13T(2?33@X?\U0
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
MM@8J;]^_60&7DT()A UJ R!SO_ME E)H#6!:)&+\#,Q9D7<S'6NV (%+A?J
M4??.QUG1*OL+E4=]&JI(:@U$(AE@+C:)BSGPJ41TM(;;1"2K=]U!)LM[OD/W
MQWS!CC K[J06D-Y3XT;)%;"-27T52EN=CE%X8V#VA17//7$FUC1A#'@)<&CB
M^@*SE(A+PB12\'?241>Y"6=>KZ.D!^!,MA)ED)0^W8+BL8V2L!B)Z"WUDE[.
M>O<9F76>VVN+VP<D'IRP4 K3VH<J3$Z]4Y@:W[F(K;QNEL.^9X5D_W+*2APD
MJC_5U$&OJ?5K%/<W/!L[<W]UQ7F?KT;F]0J#>%4<9 ''ML&RG5;;*Z;A[26H
M<1B=\0'&_$8E$@RK4DM$?L_:#@?DDB?IEY/K5(*!_J.5<;[GN<"X(Q+Z1!#-
M@*6#'A )%X1?""S\EXV/"#S?C^,X<J/8([ZD7+F"<\^-O%B[,I3?_0)VY-58
MU8D)YC]@;EZA"##R!PQLM.2P/S\>[CQMB&/D]=0QY'R=*NU<F-VA^'H%<L$X
MX']C?P)Q_G!^\>HW$&=W($RN*\_I^>N+D3,KX!@QN\,0,/;\+T"$%&"!6P.[
MI4!<99DLK$6-"S,3 NI7V@FV:!^C*5L4S4A)S6;@:B.9)D*91[ Q^D(KOR6P
M'A.S@$V=C<?H<% *@TS%+"\3JN:,"5XWGF&XIN1-FME8!^ZL7$I12=)'E69>
MKZ"!]YRB!EZOL(%WH+C!Y> X/%['X6)NY&S"9M+8:1LS($%#_XS!#C5Q;H$'
M OD;1QX^+I>&@YB@,JO32RI/&?"OTN$\!D8!OZO;J;UWV4R<QV9KB_'7L[,/
ME<5HHAPF&)O>@&E0+3*=6/W:#$T!-F86 @]O<<MT4DQSZSXT;L,W< N@U\G_
M9VXYPU3;L7(H+N&CNIJ5,U@^G?P_X'YFCR@8[DW$^=Z1&::55EP/^6;E_5Q<
MB\ZRJ<U S3'JA5#C]PYNRFR&38#<QTYU"O,]%?/44^>M!55V"T=N63/0";LR
M/]L0>/>AMLW-C0>,ZUF7^8#;06=N2^HU$P@,%T(_*<*C,;W&^0%O20N#%;!Z
M2PL8)P?Y@=\UKGT!<@Q$3L'R>SRETID-\B3- 7NL25BM_38K;/"QTZJ$Y;8
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
M/=A[.\%OI9 ]#)!ZI=_XX2Y ZA3PFVXZ5+.$Z\%^.&;[P;(KRSY,AM^=D2+
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
MO.\XY!) R7, T/K VH8^ Z]-G2^PL3/3V%[)2_:EF6811BZAE!+!0Q(0S?S
MEXHSXE*9<+]S.%#+U_: X4GM.%Q0Q^&"3?-RHE%"2$<H[M$EPG&Q@(%?#?SJ
M& %T2'ZE I5X&B>8<$Z$JZ@G=1)Y6+,61G49QYI<A\?@5_'(I>&WP*\>6:5]
MEGJK'5SWQ KKT7'YI["*U[/5KY]WNH0IZ7'*A!0D$32)_9B&$A2_.(FX]'?1
M]19'0O;FG2,:ND?&.H]/GQO(>2#G?PCB$B^A/ @U)43'-"!4Z9 2CGTT7&\7
M56B/Y)S$7PTY/[*ZT^E_?+ >EV=W]<9,7<TCJAU[W\&3&J8;G>I'L+.>)N7C
M;>V0'#&,>$"%*Y3K,4(CC\<>]=U$)LH3!#[NHN 8TCG'ZM=\JX*T[7FD3[I*
MC!X)J9\#A0[\9N W1\EOO)"Z-.9,^0DCKJ+<55R[,M:>Y''B=37>V5H#.R"_
M2;H*8+]J?O/$BAMYQ&0=+]I[MLY"-+YNZOK$/JWMH7R$7%QF,\P$W7+-AS=5
M.T_ZR2,=SQAV!W7DL9@0ZM,P]D+BAY(G2OE4TS ADH3);O61#S#NDY$;1$=F
MW3\I5QB8U_$0X,"\CI1Y"9_$?D1C5VGB)<"S2$PBXKD)IRH2'4;Z ZK5'\2\
M_/C8@K1[Y@H=:F_]\2_P"U9T[%SY4W_8H8JG5^/\8+?&^;TZYWN/-N'F&;9X
M"7JU]@]V:NV_="#[KY2JP/K=+W,CO6SST)Q"7G>(+[O_C<LN5W8V9'-&QUF!
M??54CHG3.)'-3H S<S#J256-@1RJXJ>.3248+<R+<\H6<"FF84_,.]FXT8OB
M3N6JT4)Z8[\F7)8M!_Z8%G]^J-?9[- 1<LD8TX'4GB TUI0DA$52)*&(:*#Y
M9D_KTHM>WK]4$W$-QNR?Q@%B)IF4H@9,3NL!Z;KM\O[6=C&>'\_25>7=*SH>
MKW'#G(W'FSTQ45,&S470B;]KZZQMCL*CH62N)H%'/<+=,-&!<J-(P"FX5 1;
M.*&&H_CN%_^T*^M@X8OOMRK0+CL_SAO_[-S3JRED]]8))NC5\C@XT.#[??8M
M<+HZ5C0G@SW*6+F@5Z_C(%XQ5L[T/VUW3<+UO$H+,])[S3173PGA8H(/,%XB
M$D:]$+BV'PN718D?;$[Q?O1IKFM/=Q.F/+1'V(-MI6W[A=5'LX!\&SNV/,%:
MMP=_U?_#67D.=<N?/U"UP7G5:\8=V$XP%_I\; :>P8=23:JAUS(=E?:9#'E
M N(%&A202/J!DHS',=7;]/9MRHJX*2O>OG]32PMWN0<P"(RZ!W"1?EEN R;L
M!LQ LZK)L:SV &?RPOFHIBP=@WAXX?R&[2]9?O^W-VE>3'&V[VV&,!XYP0OG
M)<[4!75MY) 7.)2TG @X<L+FG\Z'/+-")GKAO+ZY'6?W"D>N78*$5 NVJIU+
M5\T7,0O%==;+L\_!&>CU5\Y5BF/#[]+QV-$,_C&CA;'[L55GX0G[.M68N=SU
M/,:Q?9W6 64)2W3,B&; $OV./*9'/%501JXR.X'YTPSD^QQ %JC3!5"73;#M
ME!=#?:;A0VO$'1 (?O-9W=O!\L#EX3R-!ZD<Z%>HQJ ]P(:R#7CU<NP\#I*A
MG-M\7TW(,RVBZXOL0:-9 JO$-M*Y4:O@3=,2%>R<Q7).;@&G5]YB!EXC&MF;
M<5A-GE4J#'9/!^B8^50 D,7M5^ IK1P[6GG4& )8S^<UG;P 7CA_LC23&L"U
M0R?-8,1J%)9IMBLSLYU;=N\4XVQJIS8KI+L<0/FG*I$<?K=C?LW\P$*-QSA)
M<[46\&B#=8->;5 #VMV4]'$4F5Y]2(-DPWS<3W H<'J_VE&K9Q-Y)F_225H8
M4^&SF7F#/<[73*E/L%J-:9<SGP1)S(7V-0U00"A//[Q-U-'KM>6\ZLG5&H5B
M[0,J/^$*/:3_RLJ&]'W756E(ITZ]Q7F/^[(!_L+ [,)BSZ@:U6LE6 N#S!R]
MHNJ@C\^\ ]/9LC<.=^D4?[6SMK"/OA S6(2XK^Z3ZA88:\KLZ 0FC?^V,"\U
MPW"=;&FQZ)J9<DQDP/&OAJ';^:F%\P-P(ARJNCAJM^;S+ZH!L/DM LGH3JDH
M=_$T4\"#7LU"R6+?JF<Q!9ST:AQ(O U<#K0TP)+I_8<QJ.' Y%[_:Y;>HFA:
MS=?\D$1QK+7 "18^XTG$. U%Y+F$:D\?H;VV(_>H8&3P7U4 &AD7)LA^-I].
MV*+)-K<Y=;H?8Y2.8FKN!JT"J>G4>=5X#"@Y#;Z"$Y-G9J))4:I7#O(3).43
M,S[&SO]NC#:I9P#."J5G8V<,K*>HG+YVB%\UVP27T@(+*J$GZ9>3ZU1*-?FQ
M].<IJN*$A8)HXB=>$KI:>9[V/"[\T&/?_6*<3Y49!BRD'P+^;I;[+M6J.;U2
M$Q$ICP5AZ)+(%S2A022"4$CM ]9WZN+H0ESYEH9/\#<F0-E4^7WS]_7>P/6S
M6*9@H. LEF*1*QHW70,# !]NJI>/-I^ YEKQ(!9,J9#0.."8V8<5\;%BS/5]
M$%CHARE/H($\^ST+K1*I6>R#?>21(/)IXLK 3624! %P'KG+6;R9Y6 RS7(%
MO[\!V.)PJ%V.0J>@S:\]#EV]T1R'+M\YVB? >!2S1"G.DE@0$M(DD*[RA":!
M&T21W^D>V!9@?U= P>.YSWD],#ZK-9#X7#[*ROL][C_VDH02XA/%7>+QF/L^
M*,<  \DYR*R.63W;[__E+!V;F/Y$5A_?WMSFP :-G;456#)DSJOAPLOG5J.1
M+<=/&V\Y==XI5JCK;"P;5->\PK!8=H,#J[#)?LVE,?P%'TNN/ :XU9_QB4XU
MVZMBX?/?#0<_=3ZJ6Y:64YMO&(;:)F;JE]'.S%M+'5!BBU50.7&**^B9,RN
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
M?0.?-AS*D5/SMU6;LVM,Q_6\$Z2WSU9Z-[JFGCIO]0,.NEP-'AQSKH TFFS
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
M,-9NT$ZQ-(DBUD.681L-&[*IQZL[/^#%98%"&?L]JWZL)S>;V-9_??@MRZ\
MBN?7&)9[R29_CISWIV>GSN\FK\V\=>$)=BT<+JTRY8O6ZNH%:29LMA2P\]DM
MBJ$-YO([D* 7VK[O37ESJ=J^Q,D9=^GDZIQAFMCTOFDN14H&3"91*$%_CCFC
MFFC@8S%@&)A,'>TJ ^!>P3^Z7F?4Z0HJ!B@(D_=G&U7K57TMES7K< 1<'/]_
M637.)O5@0 >#HI7+K9IMVNAM@+U)4A-S_6RC_1-U9?_ %G$3;$F/R8NXE.EU
M52JZ>)2G__%7+W)_PDZQ!78'K5+;C".E?8@M#&P@*L9Z;\=*7IE^;X4),V.M
M,AN/FD5U56+RM+6'KF(/DWEI(JTF=-L(C*<3')"+@>O%&;K7C<K@JHU,':H_
M_^VU 6:;7Z O]"3]<G*=2JDF/]JP6RAY%$FA%8M(3#TNJ/"CF!#B2R$XL*5/
M%V\^EEJ<\[\W/Q#.G :!GRA721+&@BD: 4^48.J%?J %""//K9YGJVINL[2A
M*IEAO_9<-CFN4<K/TV0N8</-MK;*YZ[G@6R/0T(IT IQ(X[>:1*[@>P,CK9]
MHWV(I</U7+=W]8R-MRAA&PA9QNOGK7M0TX373JY&&[H$?\#6'4H6;_+L!I==
M5.MN1EC!QDY"Z2=!0 ESDT3!"3,O\20P$5=M[N#Y.-QCFZZX37\]B#_,"BCS
M;+AAFG62L@5A3<^(87?EI/:)[6&0FGP FXLZ'L\YR>FF%OV-VICU0GL+*W6S
M=M!#I5AL,[2L93^"B=Y_SX=8_E>F/KTMNVV!T0KH^R_0GJ:V]&#>X'Q>0C11
M=[85.:HP-VE1H%299%-5D@J*JT5AN4ECJJI3+L0T:S17#VOJPQ0ZK/JV@AW^
MQX&^ZO$7#W+QK,R=?K9&:MUU>;VE2L+(Y^A&BD'7<Z7BG@\"C, 1*R9"MEF0
M;;940\_EL8X]#ZQ?PF/)PSCR?!V P):Q=,7C6:I!)0[?OC^_ "WF\NS_];5,
M-V^J!R3VVY2UOQ'ZT'7NR8(VK8N76]U4"O3V7>9-0'R]3O.Z>D]-)Q_A7>=9
MU1?QHFZ+V-3ZN&2QHMBU7Q"=2*91\=3"50K^B+9I)=#46**FQA+4&LN)O\'@
M\<DI7=):OC>[/\"F!765ZU,=NSPA,HQ8H*GTJ.(ZY''BN0^<X-![T^%IO+QI
M++0K;NVFQO=E]^ME%+(-FHIY[K56$DVJFMO/6TB;Z^<YV])VI?K]]-.I39_N
M:'PTJCXT_,>PRK)S"<;)JX;F5;?RT4)-)J8?=W7E!@LO$ZE)_S#"$J_KZ)EI
M=<]F%ZI&"U#S1^52WK(ERE]:\G'O+*GCN7U*C%87+JTO<'I0Z=$J/E=5%ZTI
M2GJTPB.RHO"HN?;5!4;=A4FM^JWC*SIJ;JUU@"OJD!;+T8ZLX&A]<='STS[G
M2B>8](WZW8\VF>T\*Z;%O*W/A[)8M$M!53)6@<#_#SE1(4V2./$QTBE)% ?R
MP>FDG1TNO A4'A_S@$@B?2Y8$&J>N E(.B;CQU-02:6@?KJ\./^_)R_//KU^
MY8"J^N'U^T]GEV\OWO=55S=OL0=<CD5=W;S.'IL[4+MQ=*U>@K2^=]XI9J+
M;TSET_T(0]NGH+YZ@?-QWB+)]&5RL+-5*PIA+L-OY^$'-(!E=EM-P@9-X66&
M?F]@0*],Y#HS4YWJ2(AYA,D#QFEBG^>W-6/;S8X7_S6;*'.7=1#72ZAJQ$TG
M!.RE8YH(H]:T7AL%O@#*O-G@.;M%-FHX0O&Q?,B;+']C6GV_+8H9JD/-=& W
MBET6"*5B#+""G1+[(A2$^L#N>;P\5LP+X'_>/\ZP?<#E_:U-\YG#V:SB=]A'
M\?'3[]:[^ _<VWM8L;GT\BZ[O,YF!0#L;"(OK]-\JM1DX0%X1WGS5KE$7K^
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
M\=3(?_H;@P5('Q4,M G#L^KKX$'$2+@Y%=[ HX-FWB!2!5(4_6Q@66L6&_!
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
MJ_+$Q4P)O9%*"&T"?%62BJXFHG58V3,,%V'& +@<PI@LQ#WA,: +,$<-RA]
M.7/+ 6X"603A"I6)EI6XX@QG=0;K<886'78<P).[>#*A+JE)R$<#&,GHLZ"
M9#2]YV<^]>:N<C7V427=(B9"+LB,YK[P43)!)UG03D7%B3_Y68/6&R!T!A(&
MK0:.9@0VYAF>Z W0X$1?, [FYD^>$U(RS"";'1(6CEBYS,/E3N0ZHOA0$&O+
M1'X1]EX2+3]:1-QM7<+Z^'=!2J-G=2\R/C_%I:<>,F2^,*WN1<AI6$U37>2#
M/1DI<ZUDWV'00O,&&RKTN:>@W/#! Q\7ZCA FQF6@ P':I@FNJC%XR_Q;2(A
M=<@UDQ*W8IE'"<@,$4\!9X2C^Y:P<"9_X(<8_6<0@O/)"HA( $3Q$K%]4#GC
MJ2=:\:F4@46"Y$#17\)H2C%' $!(B3(H1I$#-B+Q*6>#TI'B'D*'/V88*"*=
M(C0,RNT4 T'T.T>S/2;;N#"':],54MEX"486%XO!%*FY:*%PPO=L(L(DA0PF
MS9O?59;JCLVWQ\9S7#(NQJB([M"%%FW"L"';J&B[+IIQL:RBY2LW(GY3N7X5
M^ZH(!(%V@IM#%/2TP^!Y4*\O4E=8/@564,K0BI%@4+6'2?.I- )FK;\&U2VA
M+> ,%(^TE"GK))9^';KIX$0.Y@F B QM(UK2<K[*9[ &Y9[!TM\GU(X<[1(1
M#0Q0L8[B[([6:@^::FT7GPSY>Q!7<E-AB Q<!VJF34 <B5(>,<WS$*^[J+#5
MX\*!*AK'Y0\)QNL?:W21^&!?![)ADGSOS*$HV ^-J!H7S1"R,I@1>%5% A@\
MI;8/<%,$TE'\6E#KN_$L0TE:%-+8H&YQ])(2;*ML-4=QG#3),JEH<#W /HK1
M/XI0-LSN"5AV5T4,(PN5FNDU+0Q(@BRF4ZLBB47A\!'LJ(#2[,#"#:M"B5+F
MR-:N.EL9-<Z#T0C(,[!W:@L![RS68B2: &:2AZ67$F-6V6?X-L/IHM675WD
M#,9IBO<.JL\I-YQ,1;)T*<GC]@[MK0EF?N"Z[]_E%4>#__,O7!\8WMW0<.[U
M?V>WWPG5MO"S=I\&4]5K^]FT4S5(]+:?=3!9[K]\:7VXIGW^:B1M/QLCS8W2
M._GS:@UVGF$R)?:=XV4<"6$=P,(X^[] ^B,RM:M1C@/W,)YKLCC NXH6BV7P
M;<V.D/..?5-_R.,?\1R^$^Y:W6^9%##%\[_7[:%5MO/T>80!B9;>L/5P7EN?
M6(P6@LF)<?^@L&L6435<06="\LXOS%"IKM8::<^:NO]4XI:$X-HB;)4<K,E
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
MFRT[8G5,DFPV>H']W#R'_3#2-PZ^@*7!68^\2./JX1>V4S'R;/03^WI0Y=(
MA?5XR_T_8V%\(U[N##<F9U\)::?4/P)P\5YT5=_1G4,YM^G-9G$SN&&U;0%[
M"90>03-80^<'5%^3 GIMJ+3,*HP1WSV;P4U''*@397/.\BF8J(_BNIEJE$+V
M]^'-D"XJX+'HF5(R#V9JNX2?'R?C,XD114X6+B?<,9F"2"ZU' %>PS[=$ZJY
M!/$2GA#I!<2#0%59FSCB*Z)J@)THL75#!),BW0_O0(C-_)#VTKST: 3=J.[S
M4O"0"S9!_E6N>093(=#A]_&?TSB42(+*VQ+UX@*-&7S"H;%%&K%1PE$R>O1+
MES7E,$AT^]&K!(*!(4Y*6.V0/8(Z/(/_U-R_O(+,C?" 8R(Y(H5$HGO@ \6"
M"/Q  4 Y\\20U **/T0(1TW:OC0?R5\L%T_@6Y>T7'?<!([VG(T63-.4[#R<
MD\]&.!Z)KXG?W/(Q(9>&M80.?*^PX^.9SW@^?H2A$NHKW4IPB3Z7DQ(X5J7'
M2$8MSN1UPM(0!_*&<+'1LT28T@ A\&AMB.(1=XM-$(F2#,)BE00@Z&,5"'QN
M'F1Z;2V^\@018$/E>]T8VH45=LBPR=58N8)%P&B(H0ZDD5O%Z"(@-8F&AVY5
MC-"KL.\)B"EB,8&-!X(!+&QV"Y*<UND%7H\P<[KZTX7X\;SXD;[6?GHI5OIO
M'W]+4D3QO2"2?<W&GP?*A^'Y$/5",KV]FPU0J\.;_4ZOI\'.O4%,P8='$5'4
MJ)+014->A[$K)B QZ,B<GTZ0 [ZW!B" \!^$R /Q/ Z1?I"J)-46 J..7Q^!
MGWE/>,%TU9C?BC\"H"C@08+<(3<?B6W<.(N2SO%:8!L<5Z$SY\9;WS/$PYL
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
MO^]=+M4]Q\ :C51  .?K[[-OW]O#4Q+GD]U^A&[$'V,IO_.#)]-G*OF.=SX
M<3XY(C-OSQ+\'QFY9D!D5PZFRW\6HGT,TV:10#0&25PX CQ1J)4'@+6D-^3\
M$'(F4ND:]YO\SRV><JXUKJ53XN?;K^*)F#*/$%]RAB2.4OH#$Q\ A.U C#0.
M')^BM_%7\>8(H\FHXP<>NOWT5VH#5!(7 Q953+2&71_L4,7K-52+P;,T$@,
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
M _?^YA1 AP\9_3SO,G@ %IPFVXPKOZ;?".PNV>CR;66[V%&.K_)BK9\O,IS
M).XR*BT0<.$Y)IS$V2%E_D32&GW0GGL(BW8>_0&R_*C;^YZ(I;\FJ #]IJH*
M854GG>?V+0Q[[<3_U:DE[R#B[L6P5N[SXSJUO)V3YU,T 0Y916\8\>I+MCAP
MP30J#9X,%(D5",($"J@&3?$G,[Z$(HUW?^OC3SM>[1_^Z1T]$*Q D>/T_CIX
M;YSACUC!D$G(3-L'-UJW'!R.EL$]7U*TD_TZ*7)WXT\;J>YJL 8OSHSA-;I>
MS#A>"VH!K '+,V=<5+7A*:O/8EES6H,R<$$_<TF8P#<42#_[2A]G<Z<6_V\V
M2P=_?*K2<]Q[JI'R['N1-V[A= YFT "28(:WG61_ML:-EEJCAG_"BC&$&S7<
MY9B$H,.Q$5?N"!4XH[?::I]%Y17?TZ#R. ?O1YLA'VU^=3&0^;++4\2?X6"S
MLN>_':"?Y/,W/'C9U\YJ@NYK+LHHT^''=-^P)4OT *3 E!X V'S(V2N8Y5UE
M?5-4GZ1H*=I)M0M^AY:8\L8#P 7>U"YMI:/XDV1?48B*/04%IO61>XR1&3T
M?\[G[R<I4DP#V6:8DT,O7W3A6<L8/8?=)L]1W+"L5CCD,->,C]/^&@.7VKY^
M &J#"UK&%S_W@720;+E1!T4CU.Y^=:&^0N)K# 6(^VL1&95?IT?__@)5O9_"
MZ5@W'QRD>9+O3/  B$K<[F]KA]7$!'/[NIB*4Y@VG^.JWNN?^1SP_*W^7R_O
MVYD>@%]]8LU\29AW7S929)_8#S.LI' 8(B#\J=M7[RW>WYCLO\I^I)@0J7RS
M8#B%(GD ' TQ;R26>YR06GV'MJK)2^.G$IUP06V(G/:ZV5$? _$#T&V*J-+3
M5]"L&]Q<2E)-V[3\*K=RSIY8L..56\=K8=?'22-^<O#&%0:$F%Q_MYAP;M@G
MLBM[%-E$P+J$/Y),K*+Q:4&-[EA+$&T/,[#JAC\LF.,=3E]\[XU[P_D,1_-$
M5DC^O".U5T/ZHB:K09\)E>P$(U14GYOR.4WP'V*QMX.#@QO34(L4N^(%F:IX
M5UIW 9\WZ:LJ5D^-BZR,FD"I'IUG%6<OJ#+S=ZB#8TJ&;4L&GC;\]:L=VN3R
M;O.-Q/?:I*H>JLFHE7J&X#F8* V-V^*M.C+%"HF,U&'K('@HO9DHWG>OO9/A
M<?P7N6!;EC5D4 JI?1=6W7&F;JABMMV;=,41S/4 ?-.?NX]QW-GY6W Y@6HA
M^%9L#O.Q,U0CE;)]P</U<3+>'W;]KNJQEB0J<\L!MV*5DIVYUK#B98]15GSJ
MZ%]V$+](;2V("=#SMV]O;#X6Z422AN&K]&P>B+ P;0;F7X[/J%AL4 \<\]4C
M;ZUGGIP_-M29%C:"L24D/3W\%!$?TAH;ZS8=%C";F+^V--C.T5-A?!CU;,9%
MO\$>&^3YK;9>;NU<&C3]VHSAAT93XRRX?]!K]A<L,O5:9\H@:.+=O7W0IL^V
M*_CWXJ<D3=ACY&P)&2RN_@&@5?1CR"S>RUT0>L:^[S"DNAGTK(ICHZ2)_CM<
MZOLP'_F>RY,AT_VU>,8PP;RZM8-!*X"JWRDNL^N"Y)8_M1\AYR?"_NW$\O+I
M7=G64MA-3/_!;U&?%U0[?ZLPF/$$&T:):J@T\?6!;X>+),BS.@682BW0*G_^
M!&?O!.T%AY=U;GWOB!3:YUOGH=$F=L@DETS_PH.1P%-8N:0,*C.0D:,:D^"
MF6Q+VQ;O^?PF#^0OZRLP-]^5#!1[O***9VJD3L/9G8GQ_GL.1/*5ERQ)7>.T
MJ"_4N.K(%9:O1XH,',3C2"&U Q!IJ>^,ML4!SMV*X;,@$E-4$-R!KQY?%J%_
M[(44O(-*Z(U,;1[5!>#ECVM<G-^L9OH(-#6FZD<:+R@_<[/V",!+A@BI$E*C
M7E?..SP ^%MU/R8/CY@";J(UG&R.T/"Y*-_@ON0<9SWF6>!U*:RM;6H()<(C
MJE3%&<0M!%T9?@[DC=+_U<;B5N*40S.-T>$$U4_0$,0A^OWN7MK&+CF(I^.7
M77OK)"+W9>,-VW3\B,L)3HP/7;DJ*_E2/")^FQ0MW^PR29K'%L& M[)+L0?^
M)*;X1/!U<M <@_8TL=2<HKPXQOFU#C@5I?P &".SPU&&O0;W>KO$=[DFGXCB
MOG7L30@L(#/$=[ 9 I(,(SG7(I@CR,53%,H9.W4D 2G<TZ.HB]:&W(0V2[=2
M^SGO1I/B$8\EK2,J#&XRIK :EKP!BQ\5$YR@D7M2S0< YTD3'$;L^&C+0K%L
M^*O)T?:?8V72"&W-OMKY/25=5%O(.C&2(K+-O-CJ40PL3:OC&26%3C/'%MW/
MQ7=!JF=5"12*T])D\%&K(-E)]2,")Y*@LL+0)-&QM3M$?4H+S=V7E%"!1,>!
M:&%3&+73HGA;?<:X_&1U!/+TF/5[EO)C3#!W. ?;-VT-:^@KGV?HV"R,Q_(P
MWCNH' .N\T_@#=PJZ-[_7/*4(<K;'Q9:"0N$^!2L6C@@S09%$C93U$"] TQF
MY'B5,JA+!!O:][4S)61'XE!YF*M+K5Q_R 0S9/K>ZSWRH#!)Z_A#;;6^M)J]
M%FG-4@P.0*"M%=8Z#MZ=>V?F9%)=2+A0[>54G/NG+UR8LX;5OE*>L9&$ ^/]
M%QN$R'B@U=2YN0$$OZ=PUU"L?]BP:?J-_:((NO@ENNP;*NO63U09@DNH3(1,
M1O%Z](@W5*G^E^,E#9ZL1VL*+9LJWO/<SZS6B6V&E890W\]*LYZYY(N^ ]V2
M'LNCWG&N%0[.^S0:GZ[,B+VC++*#9$YW,H1^C'X14G/EJ_OY'DKE?13_ '@>
ML-H$$'.AR?B-#Q#BF_G"%"8]]\D%5FBV,KC0</4G9[WE<SI;\\3/QQW/'#?;
MU )*!^!T5'S"IOO?I?PL' Z9!3#->G?RL-YI\X\S9 -V*/Y^Y%XN?N$<[.5=
M[:(0_C+P^GZR@TM.2DATF? BPH,!B^^)<S!3H&+4BX^:I>0U&3YC*I^0/P\I
M[I)'W__!=)KWY3X9AGL7^SW".!Z=4BD7:>ZG/O?AU]8*[+G_9?D\KHO<I*^D
MCY!\+[.5[: ]M^(N]V?6(DO3L&;).P+5<80&H1;L\?U4E#8J*M]WD)\YP/6Q
MN7KQ./5/&F<.])E0.J'-2([&O;/Q:!)'AW6G'6$>FL\_%+;8PR!,*1JFD8\V
M/Q&@L?HG\V2APM=NZ!371V>J8]9'H7'*83.,L9S;,=-A18URH$15CC#_7^"B
MN23?G/MA];M\WNISVJI:E%=<;?>D]66MNT*8/T'#KBQ1V[1K&\2!O>FU2&11
M:9D;:3&!&5K+QPJB^B^(C@8WGVOORM^TSN>]$X<;D\R3#T#=ZIJP[ZK-FY6P
MJZ5(NKH#50P4Q''*B9YG[@S5UQ%Y'O!I<RH?X PJ-U!32/K>?+WVQ5V\>JD?
M%[8NXV"&I6<MSA@??M-8S=*SJ/Q]S9+"8L'!W[DU,_R<*WB"N(>9QV%2X*I_
MEH7K-ZA)RR-GJ9\^P-=:+W9L,F XIFHC4CR?F[*."Y3!B#9>!?BY=E=9:R-5
M(CUAX#Y!1?R<7%KH!]X(BUW3-&ITV6V(%,'W4#H/BU$\(M.E(G)DD4[!GV=*
M:"_]T2;;@@<ZH0F7H9XX!P>V$]).>=W$BPZX#&*NMW56E?()K1Y3'/'$A$4H
ME1?3YS+L7"*CS$$\.OKH]MDI*9]I/W(/;%ZO3:'_&/C RQ&GK<;6PM[%G A>
M;D$7-7@1;$:2KGBN+R,G,C&AQ/AO:AWR 5B$=)'X9O;H[+7:N+#G%T=:4\=G
MO1;G!9=18@2+_"'5 6^?K_XHM[0W"8Z3F1HL,?K^HXURW7A,[5P&F9,EOF^I
M%SQF@=M\W!%A-RTB;D*G\M(VN;\S,I$-_(JE1L(J.(\^?5%^C0&W"PZJZLM?
MJ/YJZ@,E71/U:'[B'3EXTVFWVNKO$CLPPE!O^/[<7*Q/&WY'+K$XZ5*KR=?"
M=& KAX5(E&,$?:\9<^L/S&?H;9>:/:@R"5(TGF;8C+%-*>*6.A?7/Y<F-+F9
MCX^G3S>9[!X;W0A05_>E5\RT+\0UW7\_2O&( <=WJ5NR*5PDZ<_*6U:U+(QH
M9.-&BK87Q"RINWT/NHJOHASPRL/%XZWU>+D@XHI:4T]MJL$^E<^@>_):6"K]
MR6MCA5P=2GI'>*D^;AXF"$#KS/\F2W5\%-D@91E+'?SA8LSUH(%R\ID^!YK9
MW_;M$+$U7B)R 8NI1U2@7 VFY+E=^=B;,+Q7(T*JS$Q-O5J=TL.8W(=KBK'%
MTL\XJKD=::B.#<,\;[)N PJ,HLW,'@#[9_$1?B]8:6IEOGF<P:K;A7R?HI:Z
M/!:6T.X*G7_;UW/$-X/_]D?H&$G5A(Z[Z\>'"5AU[#""3!MH46[P[FM=IO.K
M&NAT?HT1BK]'EG6N[5&5F6;Q,%O"L4%3CH0UN(,I/4I'94W)4Y8!Y0%GH$39
MF2'-4E4UY+>31A7&_=>V-$N6<OP&$7,,QONKCXY7.SR;3,;BK'W<F^_^I.!O
M$(2F#-(/Q"XWA?$X^:XUQC!'BF"G%$3H@_( 3U(SWD"_&_&=.L=<DLJWNMHI
M)2S+0_/B-\4O[:;K"#NIK]41_%&'MYK'VP93]1O$%NEJ5HHS0^(NA<NA<M=S
M2H7VU%HQ;,.[U"[%:>:B5_%$&*M^_6[GD*PJ21K0:;71*A>]A&[J,S9CHU=E
M=/+T#;]]H[KPUW]'^%O4E3U#[D&+=P0*\2BK>M\J!\TG_];PW&JOG[XE6<_6
MTS?7UIG@Y6@WP-^65N154?B]>NMAP7-CYLCA$R7<*XW&UY-TLVGX +PI>5<S
M$CPTI-T;5X"EL%N;=G#S<W]?\BKDXGD](3S;_92VQ^;;=HY8,^1&JSVOZ!*#
M5%>)*8)45P[S+VC_8^>Z_Y]5HG\;U?W_ )GROD%MPTREY\+60D!@K4Q; .41
M4:AE\E.!9B\6&)E_<PAIR*#!L=A=P)[E-88PVK(A76F@^G%59+Z7M4>IUA,7
MFZ<C-?/+JD0#NBW6+"<B\W.IJ.<WO;.+ _%3\A.5_ =:/R0<GO#'XS$,Q[&\
M[?_9+S$>X@B<98.-:^;.-MLG-_U<LF(C?2U8DM\%&P+WZ5@M<!<&A?8IYW.G
MG8-J+Z[ SR]MK;=$Y08 1 ;M%P+'V1C1?-G/M-#1(E&?HNSC'C%HQ3BE,QXR
M<09NLO( 1 8Z5**Z$<9S9TM<3$DW_*JGAV34Y/%'#IWC?FYA3[VKA>3HEZKV
M&OW9,T7SRU21BXI- :S:3%2O"C=UC$Y4Y,U2;TV.K9\CJTO<;>0>,4Y5U[;L
MIFS.EO1H$\/BI"F^[GTH:[8Y.53((==?_YM-RBHU9"GKL"M>"^&_[U,IPCNL
MY\ ^O\@/V3%S09[/"4EE:ILF27Q)GY;4K=\/ #ENVK,- 73D$T^\)&ZCZ5^^
M-[46-9_GC@>T66/7[_G4_ @:UF*$AWVK72E>6I,*#F]6Y+*A^,*3AFIDV7ZC
MRA%*WY),?IWM2PF5&V= \>5&.J^&WS<-,XR%RK#TWG-.2O/CM[6N3"T5]T9R
M-LJS%L_C(;"+SK#JSK2CZ6EGSU4][T1/MM1;FIP-:YKC:;FL3P4Q:4'3LY ^
M*M?\N5L2]G07LIF]/>*K=\/\'ZOND]C=Y\41',6N]F+W7,T="U4[T*#TKY.!
M\_PCH]^_+=7X7HX"8KW!DL>742+"4PT!"U9MODJ=L5)J7V6-K?)KHU7T68XK
M@JF1%C'PUY +MEL??BSI^:%Z=Y6<SRFAKZ\,R>#X+F>0^,D1J')%N1\4X[GU
M5+XQ%62238(IR[>P2S(&"4L"QYX=" 9)J3?4IFG[/7G..T=\%>LMR,6FX"*C
M%>SXRC\B,.%&9_51;DS!XX4;OH^Z1#D?,D(VX.TML*AVX=4$17AN#+M><I,R
MW@,P)T+T /RI9Q*:[[ )P(="HKU LP[PT #G%P,/@#+NY?5)QT*)-KGE(S[V
M17W86_9FB:-39_")O$69XK+]WS>GW+\FS'_4;*O_T\C,$]!5(OW_!D,!^!&N
M&LP1JE7H4+&R:PAU'ZE1?QM]11R!G[R6M,:0[7FF Y997R%\.<5OX:+8VW1=
MKTDEC]G[M*#"AFY!"2Q-M#MJ_0!T/PIQ+7/,E-2./9>1E%'8A;&%<3)Y$3\%
MDHUQ=@H[' _M\_!DI)0[&G\=\;X]WQ]>RKK\\"-#?%95D1-DKP\*3Q64A%;E
M^;+T7#^)LRM1+%[0:)R(OEVHFLA17/F$*). )'C6ZV"!HZ0%'-;OM U;ILP+
M&J=MU*"C^@:<18\:L@#:MYT_+\H\'P#"'EMXMJF96I%# V5^#(+119Z2D>AW
M=G]C:1Z>>8!<E-%TO>G@FU2QR4/-$<>\UX,*S;+SPKYU<E&]4&<#'Q(U7!4/
MLI\V0*KUNTZ/^133ESI@"00A7E.TI0847VM;LW5JRV$]!T/YU7-2Z:<LA?0S
M!$GKHV^&7T3"C_H6LV^QU9P<JM;TT\(DN$-OC@,,]90 Z^H(8E2[]F.<HM/5
M/F<\(QKOROB;'QX9S!4+**M'A&3F3B9!O8W=YP)^]GE^>LV[3Z0@5BJZ<[.M
MN)P ;/PWF1E-!\D^!7Z/II]P%-+=Z0RWS=H"A5.T9R%$/?KC9FE^V.TBK@)$
M?KSM;<1CXP*> E.)_P%I:)RY1D&M[>\Q?SFSZM3VV!+_!&MNRKM.0W?L"Y*[
M__<SVCB$$T^"=A?T+N)CL,O,;*X;!E?SDVW[><[!-9N4V<;2?ZHA_X4 /2S\
M-U!+ P04    " #M@:Q:' LS"UH,  "->P  $0   '1L9F$M,C R-3 S,S$N
M>'-D[5W?<^(X$GZ_JOL?=#S<S54M(2&9V4EN,EM G QWB<T!L[OSM*78 E1C
M)$:2DW!__;5D&PPV!O-CPMSY*6!UJ]7]?9):LE ^_/(R]M$3$9)R=ETY.SFM
M(,)<[E$VO*X$LHJE2VGEEX]__M.'OU2K=X01@17QT.,4-07'GJ#>D*!.UQE0
MGZ#ZVY/SD_K)V_KE^T1QM:K57^25=$=DC)'"8DB4C<=$3K!+KBLCI297M9K"
MS)OZ!*L1$2<N']?JI_6WI^?G9] FGXP)4[=<C&_(  >^NJY\"[!/!Y1X%01.
M,'GU(F=5/3\_GSR?GW QA$I.SVJ_/]SWC/%85OD#O(GA4-JG[.M"W2^/PH]K
M/Z_IXD<LR:PA*?FH+6>7EY<U4SH3A8IH3M6426B=2Y+RGIHI)(7?UL+"6-0C
M=%%.$O=DR)]J4* ]O)@)*E%5TPF1V>V XIHNUCKUZNEY=1X7(,BBX@#+1Z,4
MERP8DD*MDI\5A0I &(0T93!C7&$%[#2/HH>3"64#'CV!9SJB5S$*73) )L97
MNL+KBJ3CB:\#:)Z-!!E<5S3\U1CE/R:"G$ +8Q'!?9(#B2ZN@8H$0IJ6W<\-
MQU5@X:9J27$ *N$3(A0%K^<4JNW-+1?[1=T"%3?PC]HKCPR*>@4JE-%C=LK'
MCT6= A7B']8?74\?/$#ZP^=N>_6 :5ITP]U C](-YEE,435M0R<58\.F"J+>
M=2578F8\-C^'[>,I#.*GIZB*XAJ2'Z$Q**P.)>K[4%NN9+G^0!+/81_-Y^7^
M'&E'(GF:2UUF<\5%5F;K14]C(';#I\69Y#[U] 3>Q+Z>5GHC0I0,P5E=G(L,
MX&*0Z4'P2 1-LBH4U87"RDI8-H:E@P7X/B**@C-K,%J433H(:5M8B+I@[2H/
M&Y.HY2%]5@1I]&:A47\OD<]#?A94Z0R<B<ZRH1T2!LH6'T,L1H1)^D3:D)N/
M29H+A;1S0:ZOZ\YS4X@/T-R8&887S*'07HG[IKBWL!S=^OPY8T#.%LM%\KP8
MDKI69*HM =L4L)[B[M<1]SU80%O? LA \I'+D,^%\*(8A,GJ_X9" R68RV V
ML:2 12?AJAXH(1O&E/7HD-$!S%>0I+HN#R"M9,,.Q-N%5#D$=P?]7+#?Q2DN
ME:[/92 (?&DV>NT><FY1IVOU++O?Z+<=&S7L&]2RNOU&VT:]]IW=OFVW&G8?
M-5HMY[/=;]MWJ./<MUMMJU?BOXR_S16!?&F*'WT"P-US-E1$[RL]JA#@/($U
M"-;3"-I.W^JA3N-+HWEO&>3N'?NNVK>Z#^C&:O9+@)8!"M.&/GX)X9A_71/\
M\W3PVW;+>;!0O_%[&>;E,)O90B_\39((*5MBH;ZB; T %VD >GVG]:\JC&(6
MC%C.0\>R>V8(*^%8AL/"@L%<(3M$]$:P< J!2#U= \';- 16HVO#C !CD-5%
MO4^-KE4&/YW@C<=4F43*+)K,M$W8?-+/$U@#R;LT)- 3'MK]!YC/>^%<[IA)
MV[++&3MSI-+,[Y))(-P1C$D=P8<"CP&'I8((J\W%UR#W<\9XIOL/ZEJ=S]W6
M)QC5]*NONV[CP<"X7%A"F882^T0O8;F8</TF\1/!WK< "TBPI$V>6X1;XXG/
MI[JG16@6T5@#Z/L,0!OWEDFP6TZWXW0;?0M]LAHW__[<Z$**UD-_Q>/)/Y!M
M_08)MX.LA\Z]\T5WW!+:_:VK]K6^REQG+>]_[KRB6K-+^O-!EG'H3>Q<N8^Z
M1^;U]1IO9]Y%M;PFZ]X?B'6A:R7G-EP])?F4*Y''E55KIK44*+#^*I'=>"&6
MQ'1%61Z:Z>776APW6L25".XER5SHL<7U<OOQNM0R(ZU<RXT]IK E@PZ0461H
MWA#0\G?.,G)J?LW,X_(@F<=/R+BKWVHE'49O(I=+SNZ1LUWR1%A NL3EP[#)
MH*CQU')R3_3=S,AK,[E^ "9'GJ.$Z^:PQ,SYDM6'8/6^"7QT7+TX %=+3AYV
MIRL\=CO5!V"_!72B,TF;*&< HL%8>T^\&P(Q=.D^4X=MS;XVP]\=@.%Q+,)C
MPW$T?D(0#YUM)"*"DB$I^\,A^D.;P=2HN)CNB>BI^EZ;P>\/P."9DR4G#\')
M6TS%K]@/B#.XI0PS& #\-I-*F%\;["N;V-#**_/W[! K.^TZ,K[K 7?F/4JX
M7S+[$,R.GL!2S"7T*3K>9KU,B NS74L0CZI[+B79%\<+VWMMMA]B]1<' <VC
M$*8>41Q0& @41J(D_B&([^B*VJ##AE2S$"*]MX$\M^[7)O0AEHC&833W&(4N
ME\S=ZLCQ @LWD,MCU+JCQFL)L\7QY1+V#0XR+X"<>IH'Z?P \UKP<H\_ES 5
M?95?/ST[ASY8/ZV?=PDDIM0U/^8!T8Z/V>+LL5,-!S@*<%GD*,!/2#?4Y"2Z
MJ6C>UO '1<BTMB1040+U@O$8BZG>9%/TB:KI+1<VA[6[A- N$>(SM+?QC(6W
M":]VJ_A =$NESJOI%K4_W&T+/4 #+A#X4 V=2'-0^X%"1THF%F7BC!P](IZH
M2XS +@S<KL(#,2^5XZYF7H)A4<NKINDEW_9T5FJ!.ZL*]WI:ZG+3TU(EB#O_
MO&)Q9"BJE=O]"_VL8BTE=O[A1DF7_9RN6V3,%HK?^7S=Y7[/U_T?D.A#;>E"
MMO#!XK5M^M(V.@;4%6*I:_^2=\8-,9Y$5\:%EP7><]=4$TK+^"J[3)T:\96,
MG^B[M2Y.7J077VN5VX85]^/EMF%97'_8P:K95Q33(I:3*O&775H0".A=;K$F
M)'5FWW9H!'EQ1T4:,),WGW8PS#!U91'+<X7PXPZV)76+6([%]8=B5I?ODKL,
MAW1&AOK 0[;Y935?B 6MJJZG>E:OGKW;O1VJ<!O4-O87PZDFHE#X8WGS:3<
MDC=\;N*X4='?JK&>=O]<NW]^MG4K+FI"7R"X80.,M#9[43U]7ST[+1;UU&VE
M&UJ-%;3AMQN;7'4AZ0ZSBZEFUVX7W=(([7-5E;Q,?,RP/M)Q"]\W[P+)6JQY
M)=OTB.1-K(5B%,N'\='WN!8*S:H;8+>VOBL\F=?=KFK,.DWS76XY$[I>H8DP
M$M<?=DD"IH6LQN+Z0Z;5Z.9F8_:Z\L_. T0*LY9>&38Q^VHW'LCXD8APA: O
M1?TC1R:\3G5V7_&5Q\>8LK8B8YV10I.#1ZFH"G2#[P0/)M<5<\'R%061"F+4
M]_6K-3 D A#'("V@Z\3?0]D)$91[_=!4(*);459YM/$9AT9D+.'I%KIA!,*&
MZBTK-GQ5[]><8LKP>6.-(_/4;!',=PBBW8.&?;-4T,OP>0O=8_-^T\V>/GE1
M39^[7Y/N;Z&\W--57+2', RP+[>-@]X<3KN2 ?D:P1\"W]30G"]VA*/STCL)
MX%S&6PJ9\K.8VA'Z;8!J+K^V:0B!V=#(-:=SD0XV6V[F;4=X:61B0#:G??HC
MS)R)KD+>015*=@C3_R*B,9D(_A1?3CRGR/>TO-"3=,WRE8>(\,62UUSQ3DQV
M>Y_3C"ND=82$ZS_S_H@'$C,/>DO_&4JF_9$@)./D0\KY;92//P8C*A0A;(L
MK-<\0N]MSL+M>T)NJ( 4EHN4GSDR1^A1^A>KLU_'F<.?TZQDIXC2D28YLP9G
MY#4994>6RMB!)I0S:/E8+YW@0R 5'Q,Q:WJ2D!L()_VC3)$A$:^+SQT=J!;,
MF%WBD;&9&SM&/^'7:I&D-[&IUW5G]G.F!Z+32IC>)8D7P7W>A*ZD L%(TKW-
M59+NCCDC"HOI(=T-=V557/08_D<$" -YI"IG%\'W3;K3,B]Q*$DG""LECG#@
M7./*#^-'PW5!U[NG^)'Z5/^S')B=3>L3C])(%=$Z0J_C,1&2#J'7Y'K;$ OJ
M3UL^EPO=<*WD=QXZ9YUOE6O-0%)&I+PATA74C(L9<URNU)'-=G$Z%:T?LE=?
MD';]:DZ]A0?:DD4M+I7-U1>BHHSE/\2["4B;F?S["\$B.5U^%VL_R)!]N%@\
M\^\7]YFM_[&H/Q6-A VY-ZP\_2?RP)D:;1/]/=C\05" 9-+\GS60+;;-453Q
M"*?'@_7%6QZ([];Q$\9^$,Z94WC.[>P,7O((GFW]UK*<^<F[K WYK=2/;+;/
M.T$)2:8^1 E^S.\HS'H9LW451[I;81P*KQ*;<(E]9Y!P*8L(F\D?&?+)-IJ?
MV]I$-3G_:EZE)KQ;(_>#]/4^$>,><0-!/.>)"$:'(Q6]+6;#+K 6>G)7_TWO
MI!;5?.49QIR6#4]:?/PO4$L#!!0    ( .V!K%ID+ZB\<@X  *_!   5
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
MIGX6ZSJ*VH1*XVBHN"U?3>X=25W7!7L4V7F@5MJIIY!JN-GX,-1>OG0_F,?
MR%'&"E!CF9U':+6E.H:H42#3]Q%"PNCRKIWZHR9C$?>0Z>);'"^Y[-3'8.G"
M.%(*=DXI_[692FB:R:VP+)+O/"2=]ND8CD59PCI!:\Q "A^(]4DV+45<R6:I
MR,[#LM).W2>;)7F"NI_9?A(]>U%[ 9_U"E4>\<\7VC&,;F2K5E'J*U'8%TNK
M;S**WQ?B(2KEFK[DMDNF2^0[ALJ:]FD5C]6R!+73[F$"*#P7T5U=CRPR#E.$
M=!-IJ]J(=@QK7K9H%6$V"=)9R3#.33CO^<]^'L5R4]F&Q7T^J& LOF,P;6B_
M5@%<7S8-[?>AG/_:; M<BYNV&NR@VZY4P=VW$-JA@9J^#.;0@,O;MNV67=_S
M(#I%Q.3Y4<B$^DMTX?AB^:W[!_2,T1A%\K3R<M%$77.1H$BHLOK>YR44M$DO
M%T)L_P.L'=Y NA+C&JO;YDL7 %909>\<-5'U=JV1P?#$5YO"741K5JN[1$TL
M@MK#O!+P(\*(36"L1MHV>!J)BD M$ 7F62]=G(ZU<0CJVN"5D%\(_5-..I,(
M,CE2O0>OOXG^@"*06-WL4Z;H=7>94$%00U,_3+@9!G9ODCH)^E0<:=X2=6@?
MII-MBF"=@ZA"GS'B9Z^ QJS'#O5J.DO( D(MIWG<O-)F*>XCX2#)OI?SB[>$
M_P&YS(U%"O$7+-X+VWH]Z8G"]NK9( 3Q9 RDS=\=GIP<*;O+)]Y&_STC9)5\
MEW.1M#Z^DC\@H*6#G%W55],)#>KK*1BV#V/2O;MR4;DU#=5!SO8UV^;,<</F
M^U)7BUO1_SR^PN0%_D8PGVS:C+=6;X.8NF&]WYOU]MT77O/>@H;;'"ATWDN+
M:F&W_72IQM9[ZDR-WQOU-ET67G-NI-LVC[=TW9 _DCGMM!V7*FR[&6<J_-Z*
MM^BP'6C$&=4"^]+U%: 8X6>YM*/4[7%ZY8NRAK#K"Z3@&=[.IT^0RMO$DKF<
M!I+2L;LY9U(1(7(ACFQ86F.L=NG>]LK*A56%9GFSFI(K?Z?Z&K3Z0K8S2N6B
MG.DVQ>TQS.ZS;<BPI]BY*7Y("V;,1;R:@JUVVC84**C5!8L-2LK+!=O(+S"X
MR[K#@JWLUP?=)L9IBM*:=6^ZEJ%?R!]R9>&7_P-02P,$%     @ [8&L6IQD
M6_G,'P  "@P" !4   !T;&9A+3(P,C4P,S,Q7V1E9BYX;6SM75MSW+B5?M^J
M_0]:Y5F6)6>2>"I.JG5SM"5+*JG'LWF:@DBH&QDVT0%)29U?OP";[.8%=UY
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
MU 8.N\(ZL.$4'CN.5/71*K XPEQGG;F SY 0]KAWIEI%P^IJ29L^W\Y1TX\
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
M7[\ "#))$%<")"A5172[E,GW@B2>Y\7]Q?_\7T_;#7B$69Z@]-^_>?O=#]\
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
MFEH:A@#A\(V!Q*$K$K5- D7IQ9< 2=NVP1&7(7<HH>TV*;9TVU2Z/D$I&9?
M=(5+=9KDJPW*]QF4;E7JI5SM6;)4=MV\U*NL?G:[VKI6[FFR,Q:=+#Y\.%]^
M.+M<WH#YY2DX65PNSR_?GUV>G)_=!-[@U \^R+52N2U/5C9:>Y^FC&"_&V9[
MN?8'XVH+[4&IW$G;5 ,'/?"): *J&OB\V=@85^VN'0GH@5LSE-*#JO2,2#[?
M%P\H2_YY2.';:+HTDHUV2BKI@=*:4OB@KMR%CJ(RS:A\"'+R=%:>2L*<K 7H
MN:7RV\"'E4PJ&EG52)=5$@6>0J8H"D.5\SS?ZVG2EI)1I)+R38^V=^_4J,U;
MT8)IB2F1T(<3I@-7H2HJ".M>1H-26$D!"4K"P'^Q+\C%%^0*$AT'!*(R(K1$
M?;-!4 [OE&C[L.)%4U5,#G20F#!#1-6MHHD<'C*N-#24A%&A:6S6"(^X2AYW
MV>'IY*#$GT<6&)U$Y<4YM/^/'[[[ ;])L(LS\$@$_@W\^//LAQ]^(/_O]IW^
M#?PR^^6G/^/__T!'.?C3CS_,?OGY7[DVQ?#N@!G .CNX*I)'N'G^-_"7V<]O
M?YS]_/.?J/A?9G_ZY<^SG__R5L3)7AXFPU[Y,44U3+LL[9X[U"%Y)#;BUY 6
M&<U =9WD?QP_+[&[^5/"+^H82-8<54@ZTU5;"G?FJERH22S7C%H/ 7D*R$/P
MB3P./L.@KUMD50D\#Z0*;4J8 R<,.TAQ3M$V3E(=.[J2,G8T)7VSHUL*[^QH
MN;!B1T-3SHY28&K\$-2NBA]2,,CX<5!0\D,!G9'XD1>+N_<(K<FDW@W,'I,5
MS&_0ICL'H!.LV2$7=":'K@SNW%!X4%-#JAB19^1:F#S>A%XN-:A%9/.^>1+(
MY-L<, 9(8 HT$[T;TT&DI*5&6VDPFHC*-AQE.&_]Z-,R$C4_T6%(W$B_.E5J
M"1%A1#,%EK24:[TJ(_HI03@*%1N[(<3YV>4"[+6(!!SI)/=IM"^@>\%LFS]"
M\RJN"!0B>K\L6+$$WY/9,*:H+F3R@MM8[\HU<3U*S7M=3Y>;MZM^MB[>># #
M[-'+K'[%\K4M!@(N0W<+(SD$I1>4!C=OAYST9?"/=L-#3 K%Z.3C]?79Y1)<
MG,^/SR_.E^=G-X$/)QE4IA+[ZL-'<GDU#<(>+CJ%MX5^'Z%&BKT(J90C 33>
M7=$O-Z^"ODPKNEPLSV[ U?SW^?'%&=W1=[&X?'^T/+O^ $[/CI=A.:"K263\
MVMOHEP@WH6\*C]%P?YYBYNW+75/B\*^1:N!>*.4!]PKO/G O-J_#O4@K(@]
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
M7R\'=9%H"^%& !@)TV@%X3I_A]_&19+"O,H;U<&U1J[&ME3.&=^:$KAC7.Y
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
MQ)I(UM?T*(#%#-K!K'@F^W8*S".R96%'ME61<[O"? $6&NQU&&DXPMRB5*[
M-W.EHH*)A>@"I?='%\DC7(,E-I204SET66PB)^EM<(!Z552;30:*37[U =TH
MC#O>)QLRK,%EJOX\W^(NZF.Y;U_8;%CIL-=FJ./(.ZN2N3+/U)F*>V8VHNH9
MZZO!#3U>T92<2(-E!PW4L^;:5#12;9*Q'Q;#-H"74+:!Q49%UP2V5(9J P7E
M\C*Z-W38JRELFH@J*4K&6F0&L! YYS1?K?;;?4G14[C+X"HICQY/Y:R3%6),
M&DLYTG2M94/3J+D<&Z!>Q_TV#EU1RD;]E>@,4&$18K\$5"H&_4- ,_B61P[Q
M[2];FQH][6+TNF.@-JG?K/A-M%PLYQ=L;^(4MB:*("I\_ZW-A]W=AIXJ9H"]
MT.:;H%N[GZ==.=IMSMT:"LGRS09])G?3OD/9*=K?%G?[#>YVD(MH\FNX@LFC
M((F.G5(5)0R57,%J539G')MZ4T+<S$A4RX$[E 'XM(,KTC-<97"=%&"#,)9"
M<\,.&*AOM7&T,M)MT:X?%D=A),WG>I'$M\DF*1)(+G9<"4\YZ079:U().K)-
M7P97ABD]J%BE4(S*^PU2E!Y5IZ0V!\&P%#*H563S_MM4D<LWZ6$!F)%6G^@Q
MW(P.?J^3_(_CYV.8KAZV<?;'_"GA.ZFFXO7:E$[<>:G*K#SN*U=:/^J%+(UZ
MU)( 1 34$GCTAV6"KW(9UCRRKQU^#4RMU5X2LP18(%)591(NCYF*2TG%BWLG
ME;@\_DG5\6-'*DY=0ZI)+(D9U[V25DJ\2&G5UE+32@.Q46AUFN0KW!7?9W!Q
MUTPIP99:R*6.>2>78$YR?- 4'QS:/5EC+]G9FB-G/?T:5TJ[%T/%>%?K90**
MH^/YS=DI.%E\N#J[O)DOSQ>786. +R0B[W!H1Q!'H\T XYLNXR8W%&8_%C[D
MTQ5ZRD,L].4M :%11N"V<%1_GDA&7G%MB%("JG+CMF2$2?X"9JDM)SB5&1.4
MJ1(\YT@89+FX8UH_GWU8 I[.>H,^!X))\@-YUH.!JG* =0F;)521!ENGF,R"
MJ&W]:I<P])4<-$D:"WL7LNM-I )\2WCA[_H1J4]O+>*%Z?4@785FRW@QF6L[
MY-4D:B)EE<DWDQ?":S+T-3X*=B]A<9ZNT!9>H#R?/\;)AC3=2]385<URL-'3
M8Y)VU=$*>W&]K3A2Q;'T7IKT_F50,:^O57*@8+<ORADB= ?.XBRE>SBO8%8F
MP)Q,4^,*/>0-!VWZ]S36C!$OC ]>^T6.91B %*RG1?:=E>K@#3'P+:A-D+IK
MGL1A5F:@/+'[E3$&W;UPM G8@:SO1OT 8S+[0_H%?TN*AX\INLUA1O<&G*<X
M().] KABDTW"YH7(*BD[V9W3_O RB]/\#O\V_!8X>@_LA=7C8%X<@]K O]XU
MW@U7/%4H',IK5'\"28JI^0;MR?[R;\$%?,35]E/8 #@T$=!HJ&O'SH&<-6/K
M6.P>*2?%*L,_ Y["\M_SM)MS^AIM-N]01J[>X@)+3^TZ3X6EMG.J@%ZE=<\7
M8.M6G33 SEI4*8 WE<JW)'N ^#H?H@F8:N N6E]L(><*Y],*6!EI)QAP _@X
M6U(V<9XO[I89C6;/M(2B92RM7+4)12[GNOM$5P+G;2<*!\K])E*]B#XBTP?5
MPRI!P136PO15BBS>/K>I1";>VDUBC)51J% R4E0HV:RVA09[/48:CD2Q*)4K
M9<Q<J<AC8B$JA69 2J?)3*#;( +UJK(VSPP4FXSK [] '=%3B'O&&5R7$QG+
M^ EVDZ-9Z$@[G4(=[UU-1<F4H/NEY& *[\GV%]7TN:E/N]ZER$;$)O\*\FD&
M4ACX2@P['"@[B'H 2;N% E5U9S 8\#RG0[/PZ(R].AV:<%!3*52STU3E-6-3
MF0YM"( &G"&F!V3*#0_JXUDRF>;)K*Z,CT-9,L]>ED=E'K3GL3HZ["C6%"ZI
M4E<8?^A*4[.;QGDK7K1SU&H<!'@-M4H/UC!@H;3$0G7%U>'Q2\:%(BSV T?
ML%?M.[B"&=UU(-E^HA.KAI]2,=<QI\:_"?8?87:+U$%0X48YR)2IT;7LI.PM
M[# /FHFZ ]^5I:U19/[VN3&C1+HU4!P;*-ZBI,I!'XS@&'DVO[X\OWQ_ Z[.
MKL'-K_/KL\GL9/"!$DFH=(%)J&VHJP>XWF_@XHXO&+NOY/BYW )!9T"$IS7Z
M6Z@VLO:QX+K3M7^IG;?"]G*MW"O;PV)4*8FWZLT 4YV!V^=J@Q)5GY&!TF9/
M[V)8?D9LAO$#+![0>AJS]"Z(1%X@PFWJM3?4VO7K@1Y!.EZL>)WY6$D'3"8N
MZ8AUQ3VWL[+R^&YN!7YL6MV.>N2/S1>3620PQ8JB\=;@2]*&\UJJMEP+R7'.
M=G<GH>;I&O][0E,P\30T%:].9VO%78]?&Y;'RQ21@3/E*6J=>E1/L":-%8#
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
MXY):J<4D2UB%Y-&2[!"276=LI:/F%*\S#+/$)1N(7QUG/5C&V1!S;9($DX!
M3S,E>M1D:ZL:4$Z#NN#$L^";!<T&9=<8I'+@4HM"Y' ,NCLT651BFNU5NXX-
M661/'E/.3(HJ%TD*SPNXY6?]3<75E&F(#T.;3GD&HD[33P_Z'-15%")2@(I-
MDT?=RM=S2088-9]J+0-.R3$V5EX2VO/\6U(\G.SS FUA1E>XYZO5?KO?D,[&
M?+-!G\GAN7<H.\'#P*0@IU YI+L;.N0TZ6W(/7&%XV_PE0^E?S$T^2[Z&F8[
MS3-8[+,4Q)50\ 08KIA#/FN_DS>CISTNJ\;+HX/O+"^.Q1B&$X<,,>4P_S.V
M "H3LW(K%?ZGT@5W* .E-B#J7ZG30<JT^!-P?Y>HT-6MIL^=Z5>#EEBOK&A]
M5<H#A!A]68>(*$JOM@%$8:Q.2G98=2@S4*\>2*Y3D*1@7:U0H-M-PCK:MV7Z
M@ND%#0-D:0*%,385<4%N0Q<++, ]"O59,=[A%RX,7>+%#4LM]D*-M1Q9;EDZ
M5WJ;NU/QVM1*36B&G#+ORD260&QQ@7I76INCALI-<O8%8_@&V:;]M6ENAVU=
M!Q^R-CWU;D#Y_O6*"8!-)3'A)M&Z!>S1X!FW;\.B:? 17\=3;TAIQFT7KQ%8
MEL,L>W2%3/!9Y3R_@'$.KTE^I\7=Q[R\'XG#LI%LE6Y3+>N:-=.D),[)+S5.
ME#DLE;I1_1AL(-VR2H]%!4XV:52[R+(2N-2/*I56!D<K^$QA;''VM-KLU^0L
M,2XB_M^ZF^?6P8+9F$-L8=CQAZK4 X]%)*X=QB5"BQ$YU)B3&?Q)#T>4\#$?
MFAB@T&R8(C)D,629"I;]GG_H60#/D'[+5J2^5#Q+.G/C SI0I^_L[@ZN<(.*
MBT3G34DFLT5Z$N</Y/]G_]@GCQ@>:9%?P[S(DE4!U^3!/%VWOVA(<H0;T .K
MLT$\.(:7 7^U:U,Z3-%4<6D(CU%IE.R<@<PLS6S(YO]S@%*PPCKTX"#] QZT
MPT:[(1F!1H%@.U@.X*@93,>@]SB3GRY%+B_E.T]7Y%P6/(7EO_ASV9(T7T[Y
MPOC9U"#.J^G9D9V[SM %>5=&O4I4Q!OE!/+815=.'XY;&#HZ2Y@"60">:/P/
M1$44&N#<?.FH96A-P'Z-1O+B^EV "%+TZ82D:HD$FYE1P(.&M1DX. *E"(E5
MW)=MC;($H"H">%,5XML9J,L!JH( 4A+6/?L:\H*QZ,N,>R&W_7F<OO Y7@H[
M)3':Y$.9@_HL5>86&G*^P7%FX436;9P!B+]%=Y/(LNU]OF" F0%O<P OF#E6
MG:D26#=%G!6#D6?0+M);)7UNX7V2T@S87TFD@LH46>3A/F,7]UZS2GDIR6 <
M8OFI?(T:OC),@J(ILBQ@>JUW24J.1M!M-E=9DJZ27;RYBI^W@EZQD2Q[OQI9
MQZ!B5!)/^3!UOE010:T;L;](NWA72K+]8(>S*X&);%;ER+)FVAQ4JC0Y%A!3
M7B?(C#SUAA6;?F(R@ K-0"T&*KG7!"S%S(L?=$UFAVZ]9[B\P%J]15<F+-RC
MVQ7VNDE75A8OVZJTKLSWZG:4(_8'V*&L2MN!N/V[U7F*)/2>*L/ZE^[BU2!&
MN(V7UY'OXQT98EZ#MIFK_CAC8?NP,YP%[EH.CPI*R=>%,$7H]@6SZ07O2_Q^
M;>)W5UX=PIORPU"L6Z(A WG+6P^.-?0[9R\:L7L&4I0>K29,,P$0]$R3HD?-
MLX.: =7&1-P8<;WKS0EV!M'](/P:D6<?YGO"+V"POR#;NLL!1'Z%-LGJ698
MUD"2O2.EI"/1#$KA):BK_:AXI=*,RJ_#DL6D(I'5&V]S0Z'09$4@E'@-Q 9^
M>D*%!=]28E:&WAQ\*J4 $0-4+G"Z"7]84@1;=T %#[#M)H#<_KRXJP[<"..L
MB4(KW*H5O/#)I$Q^&*7QI.>4TD#$.C(%N:*;7FM</I@"E8SJO<,H"[2T.*72
MZU++"F+!R'4-4_@YWC3O:5<P2R"MH%5+>@!."4HS!*':;FS9U-2NJ)25WU%*
M38]&HDK6<$B."P6!&DHZ]JB0-(74 .JQ0#]ELX0 OON"_<HZ<!H NR&%I3%1
M@K))'YLVZ#DZ(8Y1ULZ&Q3%I'61'(32]4_ 8AY8U6P"<9QG9Z$S^/-ON-N@9
M0N&=T?:*[+7:*#J2V+Z,)@1^A-DM4L\#6#E6<=C"4/0?\!E4W^43N8ZZ!TJ0
M2_VUJ6NNWZ3M) 'J-SF'G5\_ 'W[3?2EHE,R0S$T/-VWM)K[\KI_U=ZM'XBR
MG:E4X8AJ5'N(0$-G5D?9+PS&BMVE0T,YX+[10Z;W<M]4$F_.T[S(]J24Z@%/
M']7J+)65JNO.]1[E=-ZC;N=3N1O=QE0T7ZW(K=DY&>? Y)'>:74$EEF\AG2K
M^=G3#I8;S0^7,(1>?.D%).16P=SV<0L+K=WB+C@.GQ=TOB5;X?Y)-R@38*0Y
MSZ&^ZB;90X7J0R84591WT!RC8K^]TXZ*S(DSD8*X(3JEW0@60#)-5*H'HW";
M@MZ*<3I3$SR/POGN.6_);@N.1-9Z[,5:Z#G2V[J$7L:3-EY5K#:WH]K<%I;'
M]AA!#M779JZQ>I.R$P2GU^T6UEZ]()1MQ1"D,B&IF[CM<5/))C\.=A6;-H8%
M<, -':?PMCAT?'^+LX0,/,Y3'%IA7I"T(DOL_>RIP(UB@I^<I5@PHRTE1R8/
MEJKK;%TLN=YTZ_XK7.."6Q&4]^,Z6(Z(,CAHST"E#RH#-._1#! ;X-/!"FB8
M"7VUK@>,(J]@X2[D[6^P=5>O1P+UCT)Y5C0B$/YTB#[XP]^7Y)<O[L[3=?*8
MK/?QAJQ!7L-->>CV(=DMT5F*7\_S*=K&"1]M>FJSUVVMW3.J./S.OE&DGTM1
MU.AC*:(*=+[J"N7L,K'R66#J]P4,<JK%-KTMC1!*]_(]%H5/DPRNL"GA0KSX
M87UC??NA [_$?ESHT[$H8P<G&!VC.*.)JJH'4UE0E-0%4KU!_JKXIDR%3$TU
M#@:\DX<$WIT]P=6^2!XQ->Z2%12CT$"R6ME023K@TZ $+F!5FY<A5Z45T8>@
M?@K8XXE@V:1&D?&KYU83Y H5Y&U@,AC^;^ ]Z=F]A^@^BW</R2K>"'M)6KEJ
M[Y-<S@'Y6N\NN%<9EZ%>KA,UOYM(CT5?><CP/7-KXC+Q"N+F:!@.X 4>I/"%
MF#\E?$(DK5P%<+F<"\!UWIT KC N!;A4AP,X^2XTO+55APS?,@=OF7@-;V,L
M# ;O:[*;1 #GSO?5)O/#]PYP[5AW@6?3F R.!YF(O/0D+RCZ/L XWV>T"B:!
MQ.Y;1Y(7QNW KAY7R))7T[!($O9\!4^::/+0LQ5X<$:4MN?:E)*C:A(-N*@&
MD/35";#5[GFJJFTP?'V(GY+M?BM$F/ 9^QG<,P>4";VXX(PW*$-:6RYB'R<R
M"A*_>Z1X96U\M40JA*DK;3B,):D<8Z)G%<;:SUPP)O+BA#'.H!1C+;F(?9P*
MQH3O'BE>&8>QIDB-,66E#3>@(%MZK^$. ^ A)ND%2==O*QI1: 6;YX4D@BYC
M"JU_IT&%RKIT5"%7*O>D@\-#P)Y.HF-G4)?(]*T+]I4+Y>M1ACD\1@:]>*;(
M0%0)?!_S109E\ ]^_:R12DU!@$GT08WJ54D"Y5220D--A+$GE#IK:(+0KY21
MK1P[!WRE5Z^KP)HP+Y87KNA.(+:K*TNV:BN/Z$)1Z0KLR'&\0*L_NFW)OGA
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
M4**1PRG[8\$3_=%>[XNMCY )#DR-EP:,#99(!0%RY1[_06H?/ <1(,50TNL
MH3T>^7G10_K82:=->1ZEUL::LQ6K#9HQ7?>[3!+YB98::O.KQ6FCS/W XZ91
M=_0!I.R(C IH.8J$H.Y:D@:+B@8DQFC],K.)R1S+BF).*!-A?2KD5?_DK@D(
M6%!4>1V#]7O+9BHNBC>!BN$V="V .2J=">.R]N5,*9L!$Y7UF\TF]C!%8!>$
M>3WJ. 'LZ4$(4XB. ^.N/:@PI6@/'%36+SN;V$->W;W&*64,?(!":"P =\U
MRHZB#;#P6+_UW'J[)=IFB;97+FN\ V6S]6P0M4T;#XY9DYA45)QM-4MD7%F=
M<%@OV60V61YJR9,G5=)J0?G/"#8.OM2 C].G&-A!X]#B3V8E,F1>;J>X+PSL
M(E 4]QQM2:K'7_GO7!DT=^N=HCWM[#M"ZZ"Q]B0SJ?/KC*S!9I/_N*-3OK,9
M:U !E?E-%V(16EY3+2BAY#.KT0F#W2A_43+0%N10EC9>WX,@ ;-PO4DGJZ_)
MX:4I>C>B EMN3,2P#AJ+#G<R:Y'@\G*S>E/T\QB0.;#=]"ARP$**(D '#429
M+YEUB!"9;V-M'X%4-N4/,%[(XAE-F&9(HPKCH$&H<"/U%&P<+7:YMD_"<EZ8
ML0QF$,-)S3+[J[;Y;E. RXD(A58V!I3D--1EIH+Z),DNXA>V1\-]&#R%$680
MD++_S7<8."D6NLW*BY3*S2S+0IQ@(@=L\NM$JDEY2EV\C4)NE7%.>10@J1P
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
M8GVM\92/PIGC<=Q*NY*0CN6VH.EE\<H9> 9Q!LASMR0<0<3P:YANKK,DA5N
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
M7F9',#BZ O%BLPW0'VI3&A.</Z]1X&[P7/9);8;C@'-YIL&MY,62Z]6%.3^
ME#F_"6&JKU$W81QRLQSE0#7^9%ZVCOWX/G03J[].5GF,,QVM<&Q(Y[ :(;;'
MI0GX*^@6LYG(Z;:>TBCD'4<1AO%WU2O6]X0"46=S/I.!E;GR7#!7>&/.7')
M 7\M9BM>[&^Q0!DVG3!X"J,P)5D:\3*/7%5^8L<#]5N>,D/46]I+WI0K"K:1
M I7,R:661Q-UJ'B>=2@=_E!C$,F%7$YJ(I3G/YTI^ER]:8R/U/SA4XO3%X?=
M>\X5-E5P<2+9?:NK:ZUYECSWS<D1U&RE]B2[W>Q!9H_(,Q#8-6?;+*\\.(HB
M^$(L_A:BTW,DS9UK2T2G/:TQ(GLY6)J6 3L4&)70I=:38CENW /7+O\=*WE_
M 6BQ">)EF.3O4Y/:L7-X!68@S5#<N 6HVXQ^7U?:S">+-!2&L?VITS,_O'L&
MZ GV8&^?PU5Z':#E#"S!-K\>,P4HA+1]R<#*TQLNF$_VH\BLL;WP\5O+/.EE
M_BWW/O2S5TJP@EFT NN36>FPW>E<6"%B'I=RVL#JUW;^:DR/9HU53)#1^&QL
M4B:8?HR40=7/[6C1SR,_%%L?Z/VH*GRY(97#^V2)NNP;&Y\"H<+>?CB;>%(S
MJ %-HP!*(:;[ZA5L93KN7#MI'W7BO_:C BV..=F-M$C4.7XMJOJ2'3C^WW(>
MO.J%GT08U$)1; RN#4J6%VPO&J7Q6?6'1B3=N,C222(+WGN1'X(UH&=D%5!>
M DL-U ?+TV!6V\3$N/NX7&-?QLPI5\_]ZT^U4OS^5M50/2G3/-;1.S&3(_=W
MZ=C^)56A:,T?4'V3A4@N-4?,8]I'V0F>W&1^K[RB27WOOKKC=120!17^2['0
M.E*E>JO>@"JU)FI@]1D[MNRA :L-[UW'72VS)L+I>4:.LN<66KVFNZ9QO=4'
M5Z8([C#8'H./_\S"';FU]P#2R:IR^'P#<'\7X2%GZ>+/AWB-I53+-"):J^A&
M_ 2+6K/&NRNR9C9DP>T3]^ZE1HM" DHMG&*>>R=3HX6,>=MW-+\$>)*( :KY
M)$Z]+"GDL7J6 -+:S*>C-*C#;GTR5"!SJ,0E0.]E</LV0W&89@A@CF[#5_(W
M=K*Y'+ 0K C0%S-29M;(BD38O;S\_PO8A(N(8SCLCX7\Z(^^&(B0*2.CH#%Z
M>6_V*L.")2<)\;+\Z]UVA^!S7NJ";1]:;8ZO="BU\<6:3$1@9&2*A/RMD*.S
MP(4F2T)%L=?K#BB1\?>*B_;F2B1YQ9H$JC2%XF?4*7!@]7:I-#Q<I>$PYE<:
M9GTK]TKU;\Y5&A9T75QIN-[0FS%QJ1BM4C':PS/A2\7H#N9:M>K1.C-JLY*T
M7QM6+H?WG*NDZ@UDH<-[N]=)N?UZ "GGK$"GB8S[6A.G^/^:@%46W8<K^NA
MHX6,^VH+][9(+'6*5NI<_A7W2!5ZPE5ZE8Z_CEO#@XB$SA]SBE*_KV:3J9'Q
M_/"\T^TIS]_WL#N];^2<>?B$MNY365K'LSH)#>HDWF NVO%^\R5WH4<.CU+F
MK[5$(/2-?NMKJ6-/;L,X3/#P^@SADEXYBX%HGB@@:VY+J >HR%7=/;%0UFH+
M4*C<";Z8F,2O$/UQ%V-7NP )*94U"UZ^!'@Y$ 81UT)4VM &(V[COOUH\*QI
M3F+,_KYTG1==.W)Y%\]1$"<A[4@E4-7W45A0SAJ.&E]JIL+%Y>79<Y5+P:PJ
MF$T=5KN  TVWD"-H420"ID%D>T>GMJE06$OI;"#8Z-[@9N$V"-$O093AK11>
ML@3Q L\H=S$62)8G$5RV$-HW1B02Y3"AV:I,SU-M924;L>S<%Q D&<JS4LA5
MY:\Q?$H >B8;]+MXEZ4)J>: ^QX=4N[QOS*$L)9RJ\XKP^63&1Z.27,ZZ)D*
M+>BNJ5ASN[H&!X<2==V-*W8SS\3LJWO^QJG5YE8SWZ,SW2I3>*O7DHI?B&6"
M,+=4$LLLBA*>"F""RX1L5)-=3;9B=O3;U[G4:6]CNJZ67+V!V5.ZRJ)FUVG9
M:#4Z/6JIU,BVVS30.#04"=.9JM,OGLA4HGONLUG;X:HSKQG0>JLS7!&?PFC7
M(9$3669=9K-A;M>2PX@4W(?/8$EK0'R_5K5AXX:MO*&5'2F_5U?[+\%_0Y27
M'6#D8QNT+'>..BT=$\JI>P_!EGT/U["U7#CLUG9BT2F((NS2LR JTPV8R<ER
MP&.<F@]H+R!@J$FHP3BUM]>C>(C;\BEYGMEDXF)@VP&HK!"Z"_FN7I>TOTM/
M@RE1K!O)K,'+0)-1EZBE2=6=Q(3+3:G+#1NG;MAXZ*8N-VPZ\=NZ=VQ4O++O
MMVP$/-YS[MGH-)%O".[MWK41](R? :K72"X#ZUFBH\6?68BM5=#'7T&XWI G
MO)X!"M: >Q6G"U3'R$L;5"ZN^#F90QW*3'GE3^4>M>N".\M-':/?0I2&?Q6U
M;FEN:;-6 BX-5P+LDVGJ\&UL?!(BYS:S5ODEQPIQ F: [*67I$;J;9@L@N@W
M$#3*>W6'43XGJ6/TR)J[EZ"IR7?2$R]S@/4X?P"OZ?P%1,_@"XS3C<9:5 .9
MT6AH(CO;@2"1VS!CH-F)CDM@N6C^9)S/7V KJZ=P&!G[$<?9VCA;2L.8]I&V
MET_L&?"**=/[QI98S*WZ@.6\[9HAJ0$M^T"]XS=97+7M6YBU6[?32(PM^X#D
MK V;(:?A[/I O##KO_D71->*XXK5HWI[2X6D1!E]W.SRY@3#(/3>TY'S_5LL
M?**9-V=6^D1.Q-O[C \P!<DTV!<9M?<P7J< ;6_ 4VHQ930G'R:+")+K1;S7
MJH1 Q\>@V4!V'KY^2D]W<5CYH *("C\-"!O,$&\S61TRKV^#1?Y".2-I1 96
ML,4'<X6W>S*R$#,S4Q5<P&L=O+L;.?\U_8)Y#^+K39" JR#^XV'$S$61PA5]
M%\!9FS*4Q0_5^:S/$S(*9+808/9W220=O5#;^N62+1-CY(C]%:S(T7-D*LV2
M8>#DB=&UC$3C2;2QQ&9.I+R%.!?*/F/<)SK%4$S&+-^.81E@D0=X!1&"+WC]
M?1WL\)=TKS"SRIH*9EE^4T<< 7.STT(((@=1V^OHT3@#QY%?KWO$G0^6D_B7
M (7$7<Z"M/'6O6XSY@@4-7/9] R95S8[=?Q>YIO4V2LY(C=KL(!2PAEY2&5,
M=NT)"2F,8PR(<K$)K= ($],P-3'Y8ZMM1&1HOIHDO<P4H=:8 &W%$8P* #N
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
M_A1LD0$M,,0:]%E9(5\._9E@C69'TQ4_:%!\(?\A9<'_X_\#4$L! A0#%
M  @ [8&L6H$?)GC&!@$ BCH+ !(              ( !     &5F,C P-#<U
M.#A?,3!Q+FAT;5!+ 0(4 Q0    ( .V!K%I$-\5K# P  %<M   5
M      "  ?8& 0!E9C(P,#0W-3@X7V5X,3DM,2YH=&U02P$"% ,4    " #M
M@:Q:T2A,+2L)  #P+@  %0              @ $U$P$ 968R,# T-S4X.%]E
M>#,Q+3$N:'1M4$L! A0#%     @ [8&L6L"=4,O$!   \!,  !4
M     ( !DQP! &5F,C P-#<U.#A?97@S,BTQ+FAT;5!+ 0(4 Q0    ( .V!
MK%IL/PPWR2(  'PE   .              "  8HA 0!I;6%G93 P,# Q+FIP
M9U!+ 0(4 Q0    ( .V!K%H<"S,+6@P  (U[   1              "  7]$
M 0!T;&9A+3(P,C4P,S,Q+GAS9%!+ 0(4 Q0    ( .V!K%ID+ZB\<@X  *_!
M   5              "  0A1 0!T;&9A+3(P,C4P,S,Q7V-A;"YX;6Q02P$"
M% ,4    " #M@:Q:G&1;^<P?   *# ( %0              @ &M7P$ =&QF
M82TR,#(U,#,S,5]D968N>&UL4$L! A0#%     @ [8&L6E4^TB%*;@  [2\&
M !4              ( !K'\! '1L9F$M,C R-3 S,S%?;&%B+GAM;%!+ 0(4
M Q0    ( .V!K%J#8YUA<#H   3M P 5              "  2GN 0!T;&9A
G+3(P,C4P,S,Q7W!R92YX;6Q02P4&      H "@"0 @  S"@"

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>ef20047588_10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2024"
  xmlns:dei="http://xbrl.sec.gov/dei/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:tlfa="http://tandyleather.com/20250331"
  xmlns:us-gaap="http://fasb.org/us-gaap/2024"
  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="tlfa-20250331.xsd" xlink:type="simple"/>
    <context id="c20250101to20250331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <instant>2025-04-30</instant>
        </period>
    </context>
    <context id="c20250331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20241231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20240101to20240331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20231231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c20240331">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c20241231_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20231231_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c20241231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20231231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c20241231_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20241231_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20231231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20231231_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20231231_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20241231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20250331_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c20240331_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_StatementEquityComponentsAxis_RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20240331_StatementEquityComponentsAxis_CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</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="c20250331_StatementGeographicalAxis_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_StatementGeographicalAxis_ES">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:ES</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20231231_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c20241231_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20241231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">tlfa:AccruedLiabilitiesAndOtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20250331_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">tlfa:AccruedLiabilitiesAndOtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20231231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">tlfa:AccruedLiabilitiesAndOtherLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c20250101to20250331_StatementGeographicalAxis_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementGeographicalAxis_OtherCountriesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementGeographicalAxis_CA">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:CA</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_StatementGeographicalAxis_OtherCountriesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:OtherCountriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_StatementGeographicalAxis_US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:AllOtherCountriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">tlfa:AllOtherCountriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:GeographicConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_VehiclesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:VehiclesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:FurnitureAndFixturesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:MachineryAndEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250101to20250331_FiniteLivedIntangibleAssetsByMajorClassAxis_IntellectualPropertyMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:IntellectualPropertyMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tlfa:JPMorganChaseBankNAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-03</instant>
        </period>
    </context>
    <context id="c20230103to20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tlfa:JPMorganChaseBankNAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-03</startDate>
            <endDate>2023-01-03</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">tlfa:JPMorganChaseBankNAMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20130131_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndThirteenRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2013-01-31</instant>
        </period>
    </context>
    <context id="c20230430_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="c20200630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndThirteenRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-06-30</instant>
        </period>
    </context>
    <context id="c20250101to20250331_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MinimumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">tlfa:NonEmployeeDirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240601to20240630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-06-01</startDate>
            <endDate>2024-06-30</endDate>
        </period>
    </context>
    <context id="c20230601to20230630_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">tlfa:NonEmployeeDirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-06-01</startDate>
            <endDate>2023-06-30</endDate>
        </period>
    </context>
    <context id="c20240301to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tlfa:TwoThousandAndTwentyThreeRestrictedStockPlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-03-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20241231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:RestrictedStockAndRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:RestrictedStockAndRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:RestrictedStockAndRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">tlfa:ServicedBasedRestrictedStockUnitsRSUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c20240101to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">us-gaap:ShareBasedPaymentArrangementEmployeeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">srt:DirectorMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c20220808_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">tlfa:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-08-08</instant>
        </period>
    </context>
    <context id="c20240917_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">tlfa:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-09-17</instant>
        </period>
    </context>
    <context id="c20240831_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000909724</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">tlfa:ShareRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-08-31</instant>
        </period>
    </context>
    <unit id="U001">
        <measure>shares</measure>
    </unit>
    <unit id="U002">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="U003">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U004">
        <measure>tlfa:Store</measure>
    </unit>
    <unit id="U005">
        <measure>tlfa:Segment</measure>
    </unit>
    <unit id="U006">
        <measure>pure</measure>
    </unit>
    <unit id="U007">
        <measure>tlfa:Discount</measure>
    </unit>
    <dei:AmendmentFlag
      contextRef="c20250101to20250331"
      id="Fact_f5da0c2b699949519a853b85f54b4a29">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate
      contextRef="c20250101to20250331"
      id="Fact_18a81d306bf2432892d2bfc957b71765">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="c20250101to20250331"
      id="Fact_accb2f29dcec4cbaa12c25ecaaeb1774">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="c20250101to20250331"
      id="Fact_7230fa3b286f4a2298b74f9b6fdc96aa">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:EntityCentralIndexKey
      contextRef="c20250101to20250331"
      id="Fact_a1c671e0fde54ea7a8ae77f330ee8e38">0000909724</dei:EntityCentralIndexKey>
    <us-gaap:NumberOfOperatingSegments
      contextRef="c20250101to20250331"
      decimals="INF"
      id="Fact_52110c9064524c4faf89b8b6c0e18590"
      unitRef="U005">1</us-gaap:NumberOfOperatingSegments>
    <us-gaap:NumberOfReportableSegments
      contextRef="c20250101to20250331"
      decimals="INF"
      id="Fact_31227776067142d8be0cbb10617f0d5d"
      unitRef="U005">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MinimumMember"
      id="Fact_fbfeb37caee54873be8b0a4087eaa022">P7Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MinimumMember"
      id="Fact_18e8e79a5c4f4291950fe11f11bc251a">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="c20230103to20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"
      decimals="INF"
      id="Fact_dec83329e0ed457cae86bd2da01523fc"
      unitRef="U006">0.0210</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentVariableInterestRateTypeExtensibleEnumeration
      contextRef="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"
      id="Fact_b5db66dcfea64781bc8c2674442dccb3">http://tandyleather.com/20250331#TermSecuredOvernightFinancingRateSOFRRateMember</us-gaap:DebtInstrumentVariableInterestRateTypeExtensibleEnumeration>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20250331"
      id="Fact_eac3d0e62ab048b9bd84957bc7063da0"
      unitRef="U002"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="c20241231"
      id="Fact_95a854b3e30f455aaddbc57633032b4a"
      unitRef="U002"
      xsi:nil="true"/>
    <dei:DocumentType
      contextRef="c20250101to20250331"
      id="Fact_ea7a8776361747c7b9c6ba66adcadf5d">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="c20250101to20250331"
      id="Fact_085822ea07944fc58bb15cc062aff7a6">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="c20250101to20250331"
      id="Fact_4bdbcca0ef4142b8a42e621c9b4982c8">2025-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="c20250101to20250331"
      id="Fact_0f361fc08be64bfa9d1146a5ff786639">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="c20250101to20250331"
      id="Fact_74d6d4b6f52940bdadaeab62a63ff9f1">1-12368</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="c20250101to20250331"
      id="Fact_af778d69a49248dbb3d85c2769c090f0">TANDY LEATHER FACTORY, INC</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="c20250101to20250331"
      id="Fact_2551b4a841c947f0ad1422d312d2be60">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="c20250101to20250331"
      id="Fact_f7d0091b1f0f49d1806431b30a4a2be8">75-2543540</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="c20250101to20250331"
      id="Fact_aa3f3a8f098642828da4bac3ad02defe">1900 Southeast Loop 820</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="c20250101to20250331"
      id="Fact_1d00eac9f6b34ad1ab1673e3b27af7c7">Fort Worth</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="c20250101to20250331"
      id="Fact_b415e9e785154cdbaa1d2a77f04c7862">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="c20250101to20250331"
      id="Fact_5f9c7d174d824517adf305bb500f504f">76140</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="c20250101to20250331"
      id="Fact_93dde46eb33f4b25b2f148158c6d9bdf">817</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="c20250101to20250331"
      id="Fact_6a4573cd1cab407f9eaa99429fca0739">872-3200</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="c20250101to20250331"
      id="Fact_ca17375a946e427eb4b113f21c3b9ce0">Common Stock, par value $0.0024</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="c20250101to20250331"
      id="Fact_864e13c1a36d470ba2c3b8bbf3822bb0">TLF</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="c20250101to20250331"
      id="Fact_4ee164c3793d42119b54affa1d397360">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="c20250101to20250331"
      id="Fact_4461eeb8a8844f20b0f6754203b45657">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="c20250101to20250331"
      id="Fact_96a9d843f5b3491ea0e2056912a2b84a">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="c20250101to20250331"
      id="Fact_20f615cd7d35400a8f76d271540ee747">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="c20250101to20250331"
      id="Fact_9251bca37f9f41e69649ae476930b5f5">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="c20250101to20250331"
      id="Fact_99979506b0434dcaa2a30491cf0aa6a6">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="c20250101to20250331"
      id="Fact_b54d0fb7282b4fc8b674c35c2122713d">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="c20250430"
      decimals="INF"
      id="Fact_4bf9a833d9c8429985c70950ed7257c6"
      unitRef="U001">8512554</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20250331"
      decimals="-3"
      id="Fact_f62070ca53104d4ba151c630e4e4a1e9"
      unitRef="U002">23594000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="c20241231"
      decimals="-3"
      id="Fact_acd4eb7224d943e981813fec3b10eb8a"
      unitRef="U002">13271000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_46d596c2d45c4fefa92b51156eb74549"
      unitRef="U002">49000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_293bf35261534227b66591d272267701"
      unitRef="U002">49000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_b43d23186a354ef087c9ca3f0714944f"
      unitRef="U002">301000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_f6edb4e0e0b749f68305f01636331399"
      unitRef="U002">331000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="c20250331"
      decimals="-3"
      id="Fact_082e0eee2b8a4713a7c6283f78807a0c"
      unitRef="U002">34350000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20241231"
      decimals="-3"
      id="Fact_04cf1b1bb642476d9415c65d064283d1"
      unitRef="U002">35556000</us-gaap:InventoryNet>
    <us-gaap:IncomeTaxesReceivable
      contextRef="c20250331"
      decimals="-3"
      id="Fact_9569c2a285484bf5a1e8671ca34e2169"
      unitRef="U002">385000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:IncomeTaxesReceivable
      contextRef="c20241231"
      decimals="-3"
      id="Fact_26db74e67738448993d3afee0b1d2d09"
      unitRef="U002">384000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_41b6488a3a3a44a88ad21a52af44d03f"
      unitRef="U002">704000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_7ab4bb06c3b8482e84d348cd41978ad3"
      unitRef="U002">898000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_72f4735c8452450588a5082fc9155886"
      unitRef="U002">95000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_3dbac0e053c54355b179d600e1c205ca"
      unitRef="U002">96000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_995f57d29ee64d2db251b190ed0f3ec3"
      unitRef="U002">59429000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_b5b9f863a39241b5afc9a427225f9788"
      unitRef="U002">50536000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20250331"
      decimals="-3"
      id="Fact_1729587441e2462495c0439e1e1c882b"
      unitRef="U002">21490000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="c20241231"
      decimals="-3"
      id="Fact_7acd6689df674f3dbab31f92f3a08df8"
      unitRef="U002">31655000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20250331"
      decimals="-3"
      id="Fact_3e4fb85c9e6542f39e5a78298cfaf205"
      unitRef="U002">15239000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="c20241231"
      decimals="-3"
      id="Fact_10f9e733c68f4ac4914585c13e5fd0a5"
      unitRef="U002">19320000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20250331"
      decimals="-3"
      id="Fact_f72bd034c5f44a138409a07a60bc635c"
      unitRef="U002">6251000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="c20241231"
      decimals="-3"
      id="Fact_5bd5772e381b4d8f813e1dd299e40828"
      unitRef="U002">12335000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20250331"
      decimals="-3"
      id="Fact_71eb22a417f54533b1e1b044e588bfc6"
      unitRef="U002">10531000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="c20241231"
      decimals="-3"
      id="Fact_1018266c2a7540a195a15dca0489054c"
      unitRef="U002">10323000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20250331"
      decimals="-3"
      id="Fact_3f515628f2cf4f328ad46a7cb2c99fd1"
      unitRef="U002">1041000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="c20241231"
      decimals="-3"
      id="Fact_70f24457e3214e37805977f93e7e030c"
      unitRef="U002">1213000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_0541ef70243b490987cc2734e2f1ade0"
      unitRef="U002">664000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_7a579ba1a3f8410fbbef8802e1dfd86f"
      unitRef="U002">517000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="c20250331"
      decimals="-3"
      id="Fact_1fe1585753e64adea846847776632ae1"
      unitRef="U002">77916000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="c20241231"
      decimals="-3"
      id="Fact_70cffd90289e4302b54227519ea5ff7f"
      unitRef="U002">74924000</us-gaap:Assets>
    <us-gaap:AccountsPayableTradeCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_11c12efc92224acda9e458cb99da55e6"
      unitRef="U002">3407000</us-gaap:AccountsPayableTradeCurrent>
    <us-gaap:AccountsPayableTradeCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_ad09d85a682f4e8d97b11d1b3b7dbfb4"
      unitRef="U002">3110000</us-gaap:AccountsPayableTradeCurrent>
    <us-gaap:AccruedLiabilitiesAndOtherLiabilities
      contextRef="c20250331"
      decimals="-3"
      id="Fact_4eef18432c924b56b3185d5a927b281c"
      unitRef="U002">2692000</us-gaap:AccruedLiabilitiesAndOtherLiabilities>
    <us-gaap:AccruedLiabilitiesAndOtherLiabilities
      contextRef="c20241231"
      decimals="-3"
      id="Fact_aac5d183456b4ea0b8f8a0b9dabb0ca5"
      unitRef="U002">3571000</us-gaap:AccruedLiabilitiesAndOtherLiabilities>
    <us-gaap:TaxesPayableCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_1e61e8dbeefb4fd88509d39f3b899a0c"
      unitRef="U002">3884000</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_cda6dbc814a7488cb3d6edbc252dfa50"
      unitRef="U002">0</us-gaap:TaxesPayableCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_b0ed5a54a31d412b9206534fe59808b1"
      unitRef="U002">3205000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_2404d22b257443b8ba6b802bb6a77552"
      unitRef="U002">3205000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_194f3a521f8542ed98e877f03b2c7a02"
      unitRef="U002">13188000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_02ec94ec4d2a470489824c13737974d1"
      unitRef="U002">9886000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilityForUncertainTaxPositionsNoncurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_c9ad2f5c2f774ea4a3d5d622da635aac"
      unitRef="U002">248000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
    <us-gaap:LiabilityForUncertainTaxPositionsNoncurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_8de18742607b436280eb413a3b253259"
      unitRef="U002">248000</us-gaap:LiabilityForUncertainTaxPositionsNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_d949d25374384172856dc7f66fdca62b"
      unitRef="U002">77000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_204d66e26dbf491cba8340ec6a46a474"
      unitRef="U002">76000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20250331"
      decimals="-3"
      id="Fact_7dd3626f31de4d73899181cc1a2a07b9"
      unitRef="U002">7514000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="c20241231"
      decimals="-3"
      id="Fact_18ae09ec07c649dbb83a7ab0e8114e93"
      unitRef="U002">7561000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20250331"
      decimals="4"
      id="Fact_af70c7f62d8a42698a7ffb29891ea158"
      unitRef="U003">0.0024</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c20241231"
      decimals="4"
      id="Fact_67ad98c9aca24ba8a594ce8c89c08b06"
      unitRef="U003">0.0024</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20250331"
      decimals="0"
      id="Fact_10d33001bd8a4b708a13ea2111c77547"
      unitRef="U001">25000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c20241231"
      decimals="0"
      id="Fact_05c4c121b89f421f98b20e1e3bdd917e"
      unitRef="U001">25000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20250331"
      decimals="0"
      id="Fact_3cef10a11764446d9e282f6524a327d8"
      unitRef="U001">9936930</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="c20241231"
      decimals="0"
      id="Fact_83ea9d00f0eb43668b9ae6615ee8aaa0"
      unitRef="U001">9920957</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20250331"
      decimals="0"
      id="Fact_304d4910515b4c3b92a82deb23a70c36"
      unitRef="U001">8512554</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="c20241231"
      decimals="0"
      id="Fact_57df0afafed8470d99fc99f10a787aa5"
      unitRef="U001">8496581</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="c20250331"
      decimals="-3"
      id="Fact_86a951983e904f92bd6f529a6be80fc8"
      unitRef="U002">23000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="c20241231"
      decimals="-3"
      id="Fact_d963ecd1aeaf46ffa26e5b4a762d7524"
      unitRef="U002">23000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="c20250331"
      decimals="-3"
      id="Fact_b25aaa898f8447d08deaedfd3c1c9a54"
      unitRef="U002">4622000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="c20241231"
      decimals="-3"
      id="Fact_c749042e61ee41b1af7383819983ddf1"
      unitRef="U002">4529000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20250331"
      decimals="-3"
      id="Fact_5d919692d0154de7b43c9af45fd1dd13"
      unitRef="U002">64417000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="c20241231"
      decimals="-3"
      id="Fact_631d680706e2489cbaebfe4c28826c67"
      unitRef="U002">64486000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c20250331"
      decimals="0"
      id="Fact_f55a4907f73940b485a040204406f87d"
      unitRef="U001">1424376</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c20241231"
      decimals="0"
      id="Fact_13dd1be091a7489ab34f6ffdc13d6c61"
      unitRef="U001">1424376</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonValue
      contextRef="c20250331"
      decimals="-3"
      id="Fact_95e3dbf4d3dc48628c3ce62a07cc30ef"
      unitRef="U002">9773000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:TreasuryStockCommonValue
      contextRef="c20241231"
      decimals="-3"
      id="Fact_152d00a129594a6fa9afdcfcda3fc243"
      unitRef="U002">9773000</us-gaap:TreasuryStockCommonValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20250331"
      decimals="-3"
      id="Fact_575f180949724a33aa35bf42e4c0e306"
      unitRef="U002">-2400000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="c20241231"
      decimals="-3"
      id="Fact_cc94befd8c434ea684d35d1228e17802"
      unitRef="U002">-2112000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="c20250331"
      decimals="-3"
      id="Fact_f883230d5eaf479fa435f783bf88261f"
      unitRef="U002">56889000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241231"
      decimals="-3"
      id="Fact_c6ee96b092f44dc88a0f39788718f460"
      unitRef="U002">57153000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20250331"
      decimals="-3"
      id="Fact_197ad2ddc1fb41eb92432bd8c7a403ca"
      unitRef="U002">77916000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="c20241231"
      decimals="-3"
      id="Fact_15f1e2a04f714518b29ae79d86c2c952"
      unitRef="U002">74924000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_28ab1dc5f0a2424d8e9507d5f14104fc"
      unitRef="U002">19036000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_f76448f774c349d886f63f859102ba20"
      unitRef="U002">19275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_08ad0ab3b90d4a29bcd05a5a2412c222"
      unitRef="U002">8318000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_3001a87b92ac45178335e06196f78154"
      unitRef="U002">8355000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_ad1521a8e2b64a6082f4b08d9898ae70"
      unitRef="U002">10718000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_1e45e4e3b4874a0481a1321d4d8ba72f"
      unitRef="U002">10920000</us-gaap:GrossProfit>
    <us-gaap:OperatingCostsAndExpenses
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_6ed6ccd523dc416e80f9983374ac1430"
      unitRef="U002">10456000</us-gaap:OperatingCostsAndExpenses>
    <us-gaap:OperatingCostsAndExpenses
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_d52f31b1a1d54a1aa6fd79b5821860dd"
      unitRef="U002">10271000</us-gaap:OperatingCostsAndExpenses>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_c1838608426a4bc68dbd6c106f0a789e"
      unitRef="U002">262000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_98932bab7fba4fb4b34a99ce01a86f3f"
      unitRef="U002">649000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_c2da8dd0893244b498e3547c076b4fbb"
      unitRef="U002">190000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_e330165548d24674858cfc5fd059ddd2"
      unitRef="U002">84000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_560eacfd938c48b592927e86818eff16"
      unitRef="U002">17676000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_91d9e63d0ecd4c7aac9c3d7ac0341f45"
      unitRef="U002">0</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_108d6a79397547c48d7e11915d592dac"
      unitRef="U002">-1273000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_9d23b23709c44bbbac8a99ecacb73f07"
      unitRef="U002">-26000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_18fa3be61f484139a1c6e089534ab407"
      unitRef="U002">16593000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_b266839f55734d1c8a9e0ee18ce1c75c"
      unitRef="U002">58000</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_6b114d3106eb415bb6c8bd352b3580a8"
      unitRef="U002">16855000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_65c36355252f4445a090cedf55f3a9e1"
      unitRef="U002">707000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_6f0a9abd2b854880a4cea52c1b5c55c1"
      unitRef="U002">4179000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_bc0ef930725142b88fecbd19535f4d09"
      unitRef="U002">182000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_e1da1b23cdf8445382ee1559f1ca10ff"
      unitRef="U002">12676000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_11c09da99dc541c58944950ba1d6e947"
      unitRef="U002">525000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_9f58233529184502bbb78e902c17d11f"
      unitRef="U002">-288000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_890fc1bf9013436da25f0f2340b633fd"
      unitRef="U002">170000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_8d5799618a2f4ddea292ae2625003114"
      unitRef="U002">12388000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_01793ba7ebe541fba3a045972bfb1d8c"
      unitRef="U002">695000</us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20250101to20250331"
      decimals="2"
      id="Fact_af8bb7d74ccc49718439d1098784cea9"
      unitRef="U003">1.49</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20240101to20240331"
      decimals="2"
      id="Fact_eaffbdda29134a7c956b7bff6860d072"
      unitRef="U003">0.06</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20250101to20250331"
      decimals="2"
      id="Fact_38046fb445494e13844f410a6746d194"
      unitRef="U003">1.47</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20240101to20240331"
      decimals="2"
      id="Fact_b50308a356a34c2a966f7b204c6cd206"
      unitRef="U003">0.06</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20250101to20250331"
      decimals="0"
      id="Fact_00df9490fe9e42b088c6215bca442e03"
      unitRef="U001">8501204</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20240101to20240331"
      decimals="0"
      id="Fact_92588e99a08f4138be083aa4c405f3d8"
      unitRef="U001">8400354</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20250101to20250331"
      decimals="0"
      id="Fact_69f91970b59748d19193498c1d859c4e"
      unitRef="U001">8595320</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20240101to20240331"
      decimals="0"
      id="Fact_aa28eee9a5574e6faff73c2a132c37ce"
      unitRef="U001">8500354</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_afe992936f844416b8ec4e0642eda8cb"
      unitRef="U002">12676000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_e470e02c58864ab59f66c55f2a1e2d10"
      unitRef="U002">525000</us-gaap:NetIncomeLoss>
    <us-gaap:CostOfGoodsAndServicesSoldDepreciation
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_5d306f983ba0498dba2fed642408e418"
      unitRef="U002">181000</us-gaap:CostOfGoodsAndServicesSoldDepreciation>
    <us-gaap:CostOfGoodsAndServicesSoldDepreciation
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_9d059479e7944a349a773567501ebae2"
      unitRef="U002">321000</us-gaap:CostOfGoodsAndServicesSoldDepreciation>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_69ca229d341848a68aa7ded03ac96b2f"
      unitRef="U002">1105000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_7b4a16c658e04ba38adc1f2b81daec3c"
      unitRef="U002">919000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_a1e72c111d674bedbbc25036b427a604"
      unitRef="U002">17676000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_b5bee080bb404371a8448d148b84663e"
      unitRef="U002">0</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:ShareBasedCompensation
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_4a60c5e53a5347d1bd713fefaa2f3d72"
      unitRef="U002">93000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_05ede0e37f234aa19c82a4baf8e9a20a"
      unitRef="U002">197000</us-gaap:ShareBasedCompensation>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_6fdd91095f244192b2886af765a9f3f7"
      unitRef="U002">173000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_70210924cfb249b6b6f84f9fea140e6e"
      unitRef="U002">0</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_469f8b97f1f7415da1d2814d69cf02d0"
      unitRef="U002">-31000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_dabc86ad17ae465fa2b563c2397566c6"
      unitRef="U002">158000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_096a43d6e35345a295e31300db774b2d"
      unitRef="U002">-1227000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_96a1de920fe6427ab54a9e01cf0cc156"
      unitRef="U002">-1184000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_039ceca9acba48cb89985abc7d8296ea"
      unitRef="U002">-195000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInPrepaidExpense
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_68e8dd6e5ecf4dd0af86becdaf14e5cc"
      unitRef="U002">-72000</us-gaap:IncreaseDecreaseInPrepaidExpense>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_fe5302e6147a46c5ae71cf7dd317f2e9"
      unitRef="U002">0</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherCurrentAssets
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_491f602948a344b3845989ef3edec1dd"
      unitRef="U002">-14000</us-gaap:IncreaseDecreaseInOtherCurrentAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_c96a8bd3728f4af0bba7809769bbd558"
      unitRef="U002">-35000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_ca15fff38ecb4ff189b818392e1504bd"
      unitRef="U002">-115000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_9b82894407074b9f8452abfb20b2f340"
      unitRef="U002">-879000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_0e6e66ff0bd445bd9018c46734ae83a7"
      unitRef="U002">-1142000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_ab2074bc20e94a28830c7dbb6e21bfa9"
      unitRef="U002">-3884000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInDeferredIncomeTaxes
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_f98d9f3b08284482b86938b1ab3dacf0"
      unitRef="U002">-163000</us-gaap:IncreaseDecreaseInDeferredIncomeTaxes>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_f736b47f9e4f451d893c54a6715a4536"
      unitRef="U002">150000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssets>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentAssets
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_c32c1139021049b9b92d23d88cdbfe3b"
      unitRef="U002">2000</us-gaap:IncreaseDecreaseInOtherNoncurrentAssets>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_086a534cae7b43948ab0a46cd58bb461"
      unitRef="U002">-1361000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:IncreaseDecreaseInOperatingLeaseLiability
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_7253ba0442d044e495e002816e1abeb3"
      unitRef="U002">-892000</us-gaap:IncreaseDecreaseInOperatingLeaseLiability>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_9add301286934b06ac89dbb396719083"
      unitRef="U002">-13212000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_656485542e914606afe181c1345ebe54"
      unitRef="U002">561000</us-gaap:AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_c2af07cf40504a0fb3863d68e7713c4a"
      unitRef="U002">-536000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_d7a467a27f7a4528a6ef47f8ce72ac48"
      unitRef="U002">1086000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_0e1b8a61db48485dad07cd192176e387"
      unitRef="U002">1331000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_05556119cbdd43aebf16f66d8d972f68"
      unitRef="U002">1227000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_3b9b3ac8750b4224b9db24db523ed694"
      unitRef="U002">24897000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_4d44930884404bd7a3beecb12839fdfb"
      unitRef="U002">0</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_47f74efe31d24dd9855eaab1a527161d"
      unitRef="U002">23566000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_011f12bbaf0d4984814f929f220e4fb1"
      unitRef="U002">-1227000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_79576add873747dabed9e17088a219de"
      unitRef="U002">0</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_0c9ebe11742d4007b357682c77041e76"
      unitRef="U002">1000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_46473d416579403c84085253c90d1d90"
      unitRef="U002">12745000</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:PaymentsOfDividendsCommonStock
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_5a34abec672f435687e581e3360bea67"
      unitRef="U002">0</us-gaap:PaymentsOfDividendsCommonStock>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_52b5a6396326442d92ad66588a1be6fe"
      unitRef="U002">-12745000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_1038047a2ccc47d6bc708c0e60ff64a9"
      unitRef="U002">-1000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_080bdd037b04484ea5579b7c14fff774"
      unitRef="U002">38000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_98ef8dbc02474477aab99427288ae4e1"
      unitRef="U002">298000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_c648e453dbe943ee9f38ad469a38a4e7"
      unitRef="U002">10323000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_5d05fd4badb049b8949ff918ccfd5dbb"
      unitRef="U002">156000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20241231"
      decimals="-3"
      id="Fact_5acae741e051429da33001ab9e4162e6"
      unitRef="U002">13271000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20231231"
      decimals="-3"
      id="Fact_3a0e050ab64445d7be3cc8dba22e693d"
      unitRef="U002">12159000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20250331"
      decimals="-3"
      id="Fact_da0d3ad6306c47cf8d9980e7f11ba572"
      unitRef="U002">23594000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="c20240331"
      decimals="-3"
      id="Fact_90edb0cf2a4f4de6a1f4b7ed34f115be"
      unitRef="U002">12315000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:SharesIssued
      contextRef="c20241231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_879c826c6e794172bfeb88d6ca610075"
      unitRef="U001">8496581</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20241231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_e710d82e32fc4a5f985bb231be0d7047"
      unitRef="U002">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_36ca0c5f59764cb1bf69e1291ee12225"
      unitRef="U002">4529000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241231_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_c4304b53369646538fd7b0855c677488"
      unitRef="U002">-9773000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_21721757e57147d889dc8cb1a34658bf"
      unitRef="U002">64486000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_72c3a25ac1ff463480eddf148f285ca0"
      unitRef="U002">-2112000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20241231"
      decimals="-3"
      id="Fact_2357f622192740a0b9a63054a2a60af8"
      unitRef="U002">57153000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_cb7fb7d3594b44f4833fe775cbcd648c"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_46647acbedd8400593c9cf26382add47"
      unitRef="U002">93000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_5490ab3a653143008b91df2a72647ef3"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_e8d9bf7017384508b685df83c2bfd781"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_503cf0867fd34debb7ea16a40e53c9ee"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_d667005d327141a799794ba46f68b1e4"
      unitRef="U002">93000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_91718e187fa340f9a795afd776274f77"
      unitRef="U001">15973</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_88ae57efc6d4427398e331ad157a9c43"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_03d97e17f72943a0816423129c20b941"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_be35ac8476f641f1b8f3633be0316448"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_26fe610d76e9417bba0318133a0bf99f"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_a5a5f60c898a4f5e9906c47338e9edd2"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_987877b8e3c64556b568748d01da4cf3"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_654c7e925f4647e9aba63cee247333e2"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_922b2916227149669193d390b6c8e99c"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_db591248c11440e8bdc42fe0f7223353"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f12153ca19b24f0ba741fa9891f72d38"
      unitRef="U002">12676000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d7ab09a1f27a4d0f87d1c6440fcd5a97"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_e9f8da695a194054b249a97efd868271"
      unitRef="U002">12676000</us-gaap:NetIncomeLoss>
    <us-gaap:DividendsCommonStockCash
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_6dbcc993695f4ccea1cad401d25e2622"
      unitRef="U002">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_eedd8f929714424e92da2e839a9c019d"
      unitRef="U002">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_9629c9386127445fa350361241dbfc7d"
      unitRef="U002">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_f78b6c41d03a48e1b91d0f70fc3b27ec"
      unitRef="U002">12745000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_f1d559d8e198497cb02167faff5e61bf"
      unitRef="U002">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_1908e986057c4f38969345cfc6c50562"
      unitRef="U002">12745000</us-gaap:DividendsCommonStockCash>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_e8174cdfc42a437f8efafd5fa7507810"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_c9587add47654dcb818a3a5dd82371ea"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_4533227da46049adba5d01100e989ce5"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_af7d84f4041840808e6502d96e0a041c"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d5743edefe14475b82d01377816dda1a"
      unitRef="U002">-288000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_6c89ac8fde23419b8c9c4921669db25c"
      unitRef="U002">-288000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:SharesIssued
      contextRef="c20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_b7fe04aab6fc4f2e9b6e5bbf5d513ace"
      unitRef="U001">8512554</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20250331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_48240aaee90f4dfea491a1eaa2187440"
      unitRef="U002">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20250331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_5de8278a96724a4a8268e7e8c4f568ba"
      unitRef="U002">4622000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20250331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_b12c04a294f441d1817131a65c910192"
      unitRef="U002">-9773000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20250331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_ca2363f4edc7484b8508fa99a9bdf57f"
      unitRef="U002">64417000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20250331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_cb0e510164c94ed68d600d43ea8a85bc"
      unitRef="U002">-2400000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20250331"
      decimals="-3"
      id="Fact_66341c83da0b4914bd4e172800d0ba09"
      unitRef="U002">56889000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="c20231231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_77aee6195f82436fbba636960645d7c4"
      unitRef="U001">8399245</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20231231_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_63145af91c5b4481921fafcd8e943b43"
      unitRef="U002">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231231_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_92b612983bf6439eb584ea4cd277dc9e"
      unitRef="U002">3981000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231231_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_e6282c47f4aa44799f01924f36ad9104"
      unitRef="U002">-9773000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231231_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_1fdc8b3063d746a9ba1f9dc5f3afe8bf"
      unitRef="U002">63659000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231231_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_8df13ac2068b40d7b5bc47f772cebc86"
      unitRef="U002">-1544000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20231231"
      decimals="-3"
      id="Fact_50b9018b364a480c8b8c1be7659db019"
      unitRef="U002">56346000</us-gaap:StockholdersEquity>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_f56b62f326004a3ab836c75e69c716ae"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_0cf8c46a0f1f42fcb2e8bafccb219fce"
      unitRef="U002">197000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_9b851fb7badc470db56bd5ccc27f39ee"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_efbd04a1efd94d52933558b844e860b3"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_9050325bcff54eabb53e4c021f2e01f6"
      unitRef="U002">0</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_6030eb3b93f949328a05c7889a2a3040"
      unitRef="U002">197000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_d674fde342e54bab9b42f42b8766c453"
      unitRef="U001">2727</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_57e7373e3e9c43bdbdf137ce03c16900"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_57c37a9a8c224724a81fdcd7c6b00b79"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_faeed23a1693484599e157aa172a87ae"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_9458d0626dd7483fba50d08954441ad9"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_b12d939e65cb4956adc9a235ce83653c"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_a9a2b40b730a4a6f90fa12b3531ad42b"
      unitRef="U002">0</us-gaap:StockIssuedDuringPeriodValueRestrictedStockAwardGross>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_dde6aeab90304de28d67f097b5563ebf"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_44f9e654a47d40ce8ed289f62c2062f1"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_18856cebe376474db40000851cf7762f"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_d9b5a816a3fc4d53b80180f000de5ae2"
      unitRef="U002">525000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_70b8e38fe79c4e3fbf078ecb910758c1"
      unitRef="U002">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_719241f6c9ba41cd87238c148121fc5b"
      unitRef="U002">525000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_50ab6a4692de43f08573029c5f510ac9"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_a028d14be5924358bf6b2656c3ac9beb"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_0ae1389e85f744e0ae73b00616490d2c"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_155657b09b904d148b50cdb682e294a3"
      unitRef="U002">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_d8cf6d9ef0f74c8fa835316996a68fb6"
      unitRef="U002">170000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_e83df4b3ab0847d9b38f6038c4368f8a"
      unitRef="U002">170000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:SharesIssued
      contextRef="c20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="0"
      id="Fact_0f936d0aa29c4a38950e80b289177bd0"
      unitRef="U001">8401972</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="c20240331_StatementEquityComponentsAxis_CommonStockMember"
      decimals="-3"
      id="Fact_92eabac374fc48cebf9009578f0d4aea"
      unitRef="U002">23000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20240331_StatementEquityComponentsAxis_AdditionalPaidInCapitalMember"
      decimals="-3"
      id="Fact_bc43db5fa7d64bc4a11f5aa5b8f1c942"
      unitRef="U002">4178000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20240331_StatementEquityComponentsAxis_TreasuryStockCommonMember"
      decimals="-3"
      id="Fact_4fa6fe51a7cd4481928d356f37bcab9d"
      unitRef="U002">-9773000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20240331_StatementEquityComponentsAxis_RetainedEarningsMember"
      decimals="-3"
      id="Fact_e6e50e2739504d8ab852c466e720bf6a"
      unitRef="U002">64184000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20240331_StatementEquityComponentsAxis_AccumulatedOtherComprehensiveIncomeMember"
      decimals="-3"
      id="Fact_bfa4eef4db34490eaac81c616350116e"
      unitRef="U002">-1374000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="c20240331"
      decimals="-3"
      id="Fact_51f3e13ff8424984bc4f9af02b02e0f8"
      unitRef="U002">57238000</us-gaap:StockholdersEquity>
    <us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock
      contextRef="c20250101to20250331"
      id="Text_b31f60fb8f7b413b8381650964e68434">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;1.&#160; BASIS OF PRESENTATION AND CERTAIN SIGNIFICANT ACCOUNTING POLICIES&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Tandy Leather Factory, Inc. (&#x201c;TLF,&#x201d; &#x201c;we,&#x201d; &#x201c;our,&#x201d; &#x201c;us,&#x201d; &#x201c;the Company,&#x201d; &#x201c;Tandy,&#x201d; or &#x201c;Tandy Leather&#x201d; mean Tandy Leather Factory, Inc., together with its subsidiaries)&lt;span style="font-style: italic;"&gt; &lt;/span&gt;is one of the world&#x2019;s largest specialty retailers of leather and leathercraft-related items. Founded in 1919 in Fort Worth, Texas, the Company introduced leathercrafting to millions of American and later
          Canadian and other international customers and has built a track record as the trusted source of quality leather, tools, hardware, supplies, kits and teaching materials for leatherworkers everywhere. Today, our mission remains to build on our
          legacy of inspiring the timeless art and trade of leatherworking.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;What differentiates Tandy from the competition is our high brand awareness and strong brand equity and loyalty, our network of retail stores that provides
          convenience, a high-touch customer service experience, a hub for the local leathercrafting community, and our 100-year heritage. We believe that this combination of qualities is unique to Tandy and gives the brand competitive advantages that are
          difficult for others to replicate.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We sell our products primarily through company-owned stores, through orders generated from our global websites, &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;and through direct account representatives in our commercial division&lt;/span&gt;. We also manufacture leather lace, cut
          leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.&#160; We also offer production services to our business customers such as cutting (&#x201c;clicking&#x201d;), splitting, and some assembly. We maintain our principal
          offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;The Company currently
            operates a total of 101 retail stores as of March 31, 2025.&#160; There are 91 stores in the United States (&#x201c;U.S.&#x201d;), nine stores in
            Canada (1 was temporarily closed as of March 31, 2025 but has reopened as of our filing date), and one store in Spain.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Company&#x2019;s common shares currently trade on the Nasdaq Capital Market under the symbol &#x201c;TLF.&#x201d;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;We operate as a &lt;span style="-sec-ix-hidden:Fact_52110c9064524c4faf89b8b6c0e18590"&gt;&lt;span style="-sec-ix-hidden:Fact_31227776067142d8be0cbb10617f0d5d"&gt;single&lt;/span&gt;&lt;/span&gt; segment and report on a consolidated basis. The Chief Operating Decision Maker (CODM), which is our CEO, uses both the net sales, cost of
            goods sold and net operating income to assess the Company&#x2019;s performance and allocation of resources. All three measures are currently included on the face of our income statement.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;T&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;he accompanying unaudited Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States of America (&#x201c;GAAP&#x201d;) for interim financial information and with the
            instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for annual audited financial statements. In the opinion of management, the accompanying unaudited
            Consolidated Financial Statements for Tandy Leather Factory, Inc. and its consolidated subsidiaries contain all adjustments (consisting of normal recurring adjustments) necessary to present fairly our financial position as of March 31, 2025 and
            December 31, 2024, our results of operations and our cash flows for the three months ended March 31, 2025 and 2024, and our statements of stockholders&#x2019; equity as of and for the three months ended March 31, 2025 and 2024. The preparation of
            financial statements in accordance with GAAP requires the use of estimates that affect the reported value of assets, liabilities, revenues and expenses. These estimates are based on historical experience and various other factors that are
            believed to be reasonable under the circumstances, the results of which form the basis for the Company&#x2019;s conclusions. The Company continually evaluates the information used to make these estimates as the business and the economic environment
            changes. Actual results may differ from these estimates, and estimates are subject to change due to modifications in the underlying conditions or assumptions. These unaudited Consolidated Financial Statements should be read in conjunction with
            the audited Consolidated Financial Statements and accompanying notes included in our Form 10-K for the year ended December 31, 2024&lt;/span&gt;.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Significant Accounting Policies&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/span&gt;. The Company considers investments with a maturity, at time of purchase, of three months or
          less to be cash equivalents. All credit card, debit card and electronic transfer transactions pending settlement in less than seven days are classified as cash and cash equivalents.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Foreign currency translation and transactions&lt;/span&gt;&lt;/span&gt;. Foreign currency translation adjustments arise from activities of our
          foreign subsidiaries. Results of operations are translated into U.S. dollars using the average exchange rates during the period, while assets and liabilities are translated using period-end exchange rates. Foreign currency translation adjustments
          of assets and liabilities are recorded in stockholders&#x2019; equity and presented net of tax. Gains and losses resulting from foreign currency translations are &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;reported in the Consolidated Statements of Operations and Comprehensive Income under the caption &#x201c;Foreign currency translation adjustments, net of tax&#x201d; for all
            periods presented&lt;/span&gt;.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue Recognition.&lt;/span&gt;&lt;/span&gt;&#160; Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at
          the store, (2) via web sales, and (3) sales of product directly to commercial customers. We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise to a customer. At the store, our performance
          obligation is met and revenue is recognized when a sales transaction occurs with a customer. When merchandise is shipped to a customer, our performance obligation is met, and revenue is recognized when control passes to the customer. Shipping
          terms are normally free on board (&#x201c;FOB&#x201d;) shipping point, and control passes when the merchandise is shipped to the customer. Sales tax and comparable foreign tax are excluded from net sales, while shipping charged to our customers is included in
          net sales. Net sales are based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;sales return allowance is based each year on historical customer return behavior and other known factors and reduces net sales and cost of sales, accordingly. The sales return allowance included in accrued expense and other
            liabilities was $0.2 million as of March 31, 2025, December 31, 2024, and January 1, 2024, respectively. The estimated value of
            merchandise expected to be returned included in other current assets was less than $0.1 million as of March 31, 2025, December
            31, 2024, and January 1, 2024&lt;/span&gt;, &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;respectively&lt;/span&gt;.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;record a gift card liability for the unfulfilled performance obligation on the date we issue a gift card to a customer. We record revenue and reduce the gift card liability as the customer redeems the gift card. In addition, for gift
            card breakage, we recognize a proportionate amount for the expected unredeemed gift cards over the expected customer redemption period, which is one year. As of March 31, 2025, December 31, 2024, and January 1, 2024, our gift card liability, included in accrued expenses and other liabilities, was $0.3 million, respectively. We recognized gift card revenue of $0.2
            million for the 3 months ended March 31, 2025 and 2024&lt;/span&gt; respectively.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;For the three
            months ended March 31, 2025 and 2024, we recognized $0.1 million in net sales associated with gift cards.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Disaggregated Revenue.&lt;/span&gt;&#160; &lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:&lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended March 31,&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(in thousands)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2025&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;16,944&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,085&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Canada&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,850&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,897&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;Other &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;242&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;293&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net sales&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,036&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,275&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"&gt;Geographic sales information is based on the location of the customer. As a percentage of our consolidated net sales, excluding Canada, our
            other international net sales were less than 2.0% for the three months ended March 31, 2025, and 2024, respectively.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt; &lt;br/&gt;
            &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;Discounts&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;&lt;span style="text-decoration: underline;"&gt;.&lt;/span&gt; &lt;span style="font-style: normal;"&gt;We offer six classes of customer discounts: 1) Retail, 2) Military/First Responder, 3) Business, 4) Commercial, 5) Commercial Pro, and 6) Employees. There
              are no other classe of discounts, and any discounts given will fall into one of these six categories. Such discounts are not
              deemed to be variable consideration nor convey a material right to these customers since the discounted pricing they receive in a discount class is not incremental to others within the same class and there is no retrospective impact of such
              discounts. As a result, sales are reported after deduction of discounts at the point of sale. We do not pay slotting fees or make other payments to resellers.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Operating&lt;/span&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&#160;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;expense&lt;/span&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;s&lt;/span&gt;. Operating expenses include all
          selling, general and administrative costs, including wages and benefits, rent and occupancy costs, depreciation, advertising, store operating expenses, outbound freight charges (to ship merchandise to customers), and corporate office costs.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Property and equipment, net of accumulated depreciation&lt;/span&gt;&lt;/span&gt;. Property and equipment are stated at cost. Depreciation is
          computed using the straight-line method over the estimated useful lives of the assets, which are &lt;span style="-sec-ix-hidden:Fact_18e8e79a5c4f4291950fe11f11bc251a"&gt;three&lt;/span&gt; to ten years for equipment and machinery, &lt;span style="-sec-ix-hidden:Fact_fbfeb37caee54873be8b0a4087eaa022"&gt;seven&lt;/span&gt;
          to fifteen years for furniture and fixtures, five years for vehicles, and forty years for buildings and related improvements. Leasehold
          improvements are amortized over the lesser of the life of the lease or the useful life of the asset. Repairs and maintenance costs are expensed as incurred but are capitalized if&#160; the related cost extends the life of the assets.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Inventory&lt;/span&gt;&lt;/span&gt;. Inventory is stated at the lower of first-in, first-out (&#x201c;FIFO&#x201d;) cost or net realizable value, and FIFO
          layers are maintained at the location level. Finished goods held for sale include the cost of merchandise purchases, the costs to bring the merchandise to our Texas distribution center, warehousing and handling expenditures, and distributing and
          delivering merchandise to our stores. These costs include depreciation of long-lived assets utilized in acquiring, warehousing and distributing inventory. Manufacturing inventory including raw materials and work-in-process is valued on a first
          in, first out basis using full absorption accounting which includes material, labor, and other applicable manufacturing overhead. Carrying values of inventory are analyzed and, to the extent that the cost of inventory exceeds the net realizable
          value, provisions are made to reduce the carrying amount of the inventory.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We regularly review all inventory items to determine if there are (i) damaged goods (e.g., for leather, excessive scars or damage from ultra-violet (&#x201c;UV&#x201d;) light),
          (ii) items that need to be removed from our product line (e.g., slow-moving items, inability of a supplier to provide items of acceptable quality or quantity, and to maintain freshness in the product line) and (iii) pricing actions that need to
          be taken to adequately value our inventory at the lower of cost or net realizable value.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Since the determination of net realizable value of inventory involves both estimation and judgment with regard to market values and reasonable costs to sell,
          differences in these estimates could result in ultimate valuations that differ from the recorded asset.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The majority of inventory purchases and commitments are paid for in U.S. dollars in order to limit the Company&#x2019;s exposure to foreign currency fluctuations. Goods
          shipped to us are recorded as inventory owned by us when the risk of loss shifts to us from the supplier.&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;br/&gt;
          &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"&gt;(in thousands)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;March 31, 2025&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;December 31, 2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;On hand:&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Finished goods held for sale&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;30,433&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;31,022&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Raw materials and work in process&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;1,251&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;1,819&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Inventory in transit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;2,666&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;2,715&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;TOTAL&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;34,350&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;35,556&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;.&lt;/span&gt; We lease real estate for our principal offices (including
          distribution center), retail store locations and may lease warehouse equipment for our Texas distribution center under long-term lease agreements. We determine if an arrangement is a lease at inception and recognize right-of-use (&#x201c;ROU&#x201d;) assets
          and lease liabilities at commencement date based on the present value of the lease payments over the lease term.&lt;span style="color: rgb(0, 0, 0);"&gt; We elected not to record leases with an initial term of 12 months or less on the balance sheet for
            all our asset classes.&lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;For operating leases, the present value of our lease liabilities may include: (1) rental payments adjusted for inflation or market rates, and (2) lease terms with
          options to renew the lease or options to purchase leased equipment, when it is reasonably certain we will exercise such an option. The exercise of lease renewal or purchase option is generally at our discretion.&#160; Payments based on a change in an
          index or market rate are not considered in the determination of lease payments for purposes of measuring the related lease liability. We discount lease payments using our incremental borrowing rate based on information available as of the
          measurement date.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We recognize rent expense related to our &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;operating leases assets on a straight-line basis over the lease term. Rent expense is recorded in operating expenses.&lt;br/&gt;
          &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;For finance leases, our right-of-use assets are amortized on a straight-line basis over the earlier of the useful life of the right-of-use asset or the end of the
          lease term with rent expense recorded to operating expenses.&#160; We adjust the lease liability to reflect lease payments made during the period and interest incurred on the lease liability using the effective interest method. &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;The interest expense incurred is recorded in interest expense on the Consolidated Statements of
            Operations and Comprehensive Income&lt;/span&gt;.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term. We also perform interim reviews of our lease
          assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. None of our lease agreements contain contingent rental payments, material residual value guarantees or material
          restrictive covenants. We have no sublease agreements and no lease agreements in which we are named as a lessor.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;/span&gt;. We evaluate long-lived assets on a quarterly basis to identify events or changes in
          circumstances (&#x201c;triggering events&#x201d;) that indicate the carrying value of certain assets may not be recoverable. Upon the occurrence of a triggering event, ROU lease assets, property and equipment and definite-lived intangible assets are reviewed
          for impairment and an impairment loss is recorded in the period in which it is determined that the carrying amount of the assets is not recoverable. The determination of recoverability is made based upon the estimated undiscounted future net cash
          flows of assets grouped at the lowest level for which there are identifiable cash flows independent of the cash flows of other groups of assets with such cash flows to be realized over the estimated remaining useful life of the primary asset
          within the asset group. The Company determined the lowest level of identifiable cash flows that are independent of other asset groups to be primarily at the individual store level. If the estimated undiscounted future net cash flows for a given
          store are less than the carrying amount of the related store assets, an impairment loss is determined by comparing the estimated fair value with the carrying value of the related assets. The impairment loss is then allocated across the asset
          group&#x2019;s major classifications which in this case are operating lease assets and property and equipment. Triggering events at the store level could include material declines in operational and financial performance or planned changes in the use of
          assets, such as store relocation or store closure. This evaluation requires management to make judgements relating to future cash flows, growth rates and economic and market conditions. The fair value of an asset group is estimated using a
          discounted cash flow valuation method.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Fair Value of Financial Instruments&lt;/span&gt;&lt;/span&gt;. We measure fair value as an exit price, which is the amount that would be
          received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering such assumptions, accounting standards establish a three-tier fair value hierarchy, which prioritizes the
          inputs used in the valuation methodologies in measuring fair value:&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 36pt; vertical-align: top;"&gt;
                  &lt;div style="margin-left: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#x25cf;&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify;"&gt;Level 1 &#x2013; observable inputs that reflect quoted prices in active markets for identical assets or liabilities.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 36pt; vertical-align: top;"&gt;
                  &lt;div style="margin-left: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#x25cf;&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify;"&gt;Level 2 &#x2013; significant observable inputs other than quoted prices in active markets for similar assets and liabilities, such as quoted prices for identical or similar assets or liabilities in markets that
                    are not active; or other inputs that are observable or can be corroborated by observable market data.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 36pt; vertical-align: top;"&gt;
                  &lt;div style="margin-left: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#x25cf;&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify;"&gt;Level 3 &#x2013; significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
          &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
          &lt;/div&gt;

        &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Classification of the financial asset or liability within the hierarchy is
          determined based on the lowest level input that is significant to the fair value measurement. &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Our principal financial instruments held consist of T-Bills as of March 31, 2025, which fall under level 1 of the fair value hierarchy and accounts receivable -
          trade, accounts payable - &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;trade, which fall under Level 3 of the fair
            value hierarchy&lt;/span&gt;. As of March 31, 2025 and December 31, 2024, the carrying values of our financial instruments included in our Consolidated Balance Sheets approximated their fair values. There were no transfers into or out of Levels 1, 2 and 3 during the three months ended March 31, 2025 and 2024.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Income Taxes&lt;/span&gt;&lt;/span&gt;. Income taxes are estimated for each jurisdiction in which we operate. This involves assessing current
          tax exposure together with temporary differences resulting from differing treatment of items for tax and financial statement accounting purposes. Any resulting deferred tax assets are evaluated for recoverability based on estimated future taxable
          income. To the extent it is more-likely-than-not that all or a portion of a deferred tax asset will not be realized, a valuation allowance is recorded. Our evaluation regarding whether a valuation allowance is required or should be adjusted also
          considers, among other things, the nature, frequency, and severity of recent losses, forecasts of future profitability and the duration of statutory carryforward periods.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The
          effect on deferred taxes from a change in tax rate is recognized through continuing operations in the period that includes the enactment date of the change. Changes in tax laws and rates could affect recorded deferred tax assets and liabilities
          in the future.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;A tax benefit from an uncertain tax position may be recognized when it is more-likely-than-not that the position will be sustained upon examination, including
          resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more-likely-than-not recognition threshold to be recognized.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not
          previously available. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as
          increases or decreases to income tax expense and the effective tax rate in the period in which new information becomes available. We recognize interest and/or penalties related to all tax positions in income tax expense. To the extent that
          accrued interest and penalties do not ultimately become payable, amounts accrued will be reduced and reflected as a reduction of the overall income tax provision in the period that such determination is made.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We may be subject to periodic audits by the Internal Revenue Service and other taxing authorities. These audits may challenge certain of our tax positions, such as
          the timing and amount of deductions and allocation of taxable income to the various jurisdictions.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Stock-based compensation&lt;/span&gt;&lt;/span&gt;. The Company&#x2019;s stock-based compensation relates primarily to restricted stock unit (&#x201c;RSU&#x201d;)
          awards. Accounting guidance requires measurement and recognition of compensation expense at an amount equal to the grant date fair value. Compensation expense is recognized for service-based stock awards on a straight-line basis or ratably over
          the requisite service period, based on the closing price of the Company&#x2019;s stock on the date of grant. The service-based awards typically vest ratably over the requisite service period, provided that the participant is employed on the vesting
          date. Compensation expense is reduced by actual forfeitures as they occur over the requisite service period of the awards.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Performance-based RSUs vest, if at all, upon the Company satisfying certain performance targets. The Company records compensation expense for awards with a
          performance condition when it is probable that the condition will be achieved. If the Company determines it is not probable a performance condition will be achieved, no compensation expense is recognized. If the Company changes its assessment in
          a subsequent period and concludes it is probable a performance condition will be achieved, the Company will recognize compensation expense ratably between the period of the change in assessment through the expected date of satisfying the
          performance condition for vesting. If the Company subsequently assesses that it is no longer probable that a performance condition will be achieved, the accumulated expense that has been previously recognized will be reversed. The compensation
          expense ultimately recognized, if any, related to performance-based awards will equal the grant date fair value based on the number of shares for which the performance condition has been satisfied. We issue shares from authorized shares upon the
          lapsing of vesting restrictions on RSUs. We do not use cash to settle equity instruments issued under stock-based compensation awards. &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;The payments of the employees&#x2019; tax liability for a portion of the vested shares are generally satisfied by withholding shares with a fair value equal to the tax
            liability&lt;/span&gt;.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Accounts Receivable - Trade and Expected Credit Losses&lt;/span&gt;&lt;/span&gt;. Our receivables primarily arise from the sale of merchandise
          to customers that have applied for and been granted credit. Accounts receivable are stated at amounts due, net of an allowance. Accounts receivable are generally due within 30 days of invoicing. We estimate expected credit losses based on factors
          such as the composition of accounts receivable, the age of the accounts, historical bad debt experience, and our evaluation of the financial condition and past collection history of each customer. Management believes that the historical loss
          information it has compiled is a reasonable base on which to determine expected credit losses for trade receivables held at March 31, 2025, because the composition of the trade receivables at that date is consistent with that used in developing
          the historical credit-loss percentages (i.e., the similar risk characteristics of its customers and its credit practices have not changed significantly over time). Accordingly, the allowance for expected credit losses at March 31, 2025, December
          31, 2024, and January 1, 2024 each totaled less than $0.1 million.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Other Intangible Assets&lt;/span&gt;&lt;/span&gt;. Our intangible assets and related accumulated amortization relate to trademarks and
          copyrights that are definite-lived intangibles and are subject to amortization. The weighted average amortization period is 15 years
          for trademarks and copyrights. Amortization expense related to other intangible assets was less than $0.01 million during each of
          the 3 months ended March 31, 2025 and 2024. Based on the current amount of intangible assets subject to amortization, we estimate amortization expense to be less than $0.01 million annually over the next five years.&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Comprehensive Income&lt;/span&gt;&lt;/span&gt;. Comprehensive income includes net income or loss and certain other items that are recorded
          directly to stockholders&#x2019; equity. The Company&#x2019;s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.&lt;/div&gt;
</us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock>
    <us-gaap:NumberOfStores
      contextRef="c20250331"
      decimals="0"
      id="Fact_4dbd6a8c56e84f27aaa7d32364be2199"
      unitRef="U004">101</us-gaap:NumberOfStores>
    <us-gaap:NumberOfStores
      contextRef="c20250331_StatementGeographicalAxis_US"
      decimals="0"
      id="Fact_b4427d9332914dd6b50b3e6115350cef"
      unitRef="U004">91</us-gaap:NumberOfStores>
    <us-gaap:NumberOfStores
      contextRef="c20250331_StatementGeographicalAxis_CA"
      decimals="INF"
      id="Fact_329b8bdb202b49509152578bf3c93313"
      unitRef="U004">9</us-gaap:NumberOfStores>
    <tlfa:NumberOfStoresTemporarilyClosed
      contextRef="c20250331"
      decimals="INF"
      id="Fact_5e18285e6dff4f2da10192437b0a79cb"
      unitRef="U004">1</tlfa:NumberOfStoresTemporarilyClosed>
    <us-gaap:NumberOfStores
      contextRef="c20250331_StatementGeographicalAxis_ES"
      decimals="INF"
      id="Fact_7f89aa4dbea9402c90ea404596e94090"
      unitRef="U004">1</us-gaap:NumberOfStores>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_8f9875ae87af46f3ad28375a68e33c70">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Cash and cash equivalents&lt;/span&gt;&lt;/span&gt;. The Company considers investments with a maturity, at time of purchase, of three months or
          less to be cash equivalents. All credit card, debit card and electronic transfer transactions pending settlement in less than seven days are classified as cash and cash equivalents.&lt;/div&gt;
</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_4491e6514c9647dd8ad490c67638839d">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Foreign currency translation and transactions&lt;/span&gt;&lt;/span&gt;. Foreign currency translation adjustments arise from activities of our
          foreign subsidiaries. Results of operations are translated into U.S. dollars using the average exchange rates during the period, while assets and liabilities are translated using period-end exchange rates. Foreign currency translation adjustments
          of assets and liabilities are recorded in stockholders&#x2019; equity and presented net of tax. Gains and losses resulting from foreign currency translations are &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;reported in the Consolidated Statements of Operations and Comprehensive Income under the caption &#x201c;Foreign currency translation adjustments, net of tax&#x201d; for all
            periods presented&lt;/span&gt;.&lt;/div&gt;
</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_9b55e5c11e68433da642dfca7d6f9b0e">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Revenue Recognition.&lt;/span&gt;&lt;/span&gt;&#160; Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at
          the store, (2) via web sales, and (3) sales of product directly to commercial customers. We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise to a customer. At the store, our performance
          obligation is met and revenue is recognized when a sales transaction occurs with a customer. When merchandise is shipped to a customer, our performance obligation is met, and revenue is recognized when control passes to the customer. Shipping
          terms are normally free on board (&#x201c;FOB&#x201d;) shipping point, and control passes when the merchandise is shipped to the customer. Sales tax and comparable foreign tax are excluded from net sales, while shipping charged to our customers is included in
          net sales. Net sales are based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;sales return allowance is based each year on historical customer return behavior and other known factors and reduces net sales and cost of sales, accordingly. The sales return allowance included in accrued expense and other
            liabilities was $0.2 million as of March 31, 2025, December 31, 2024, and January 1, 2024, respectively. The estimated value of
            merchandise expected to be returned included in other current assets was less than $0.1 million as of March 31, 2025, December
            31, 2024, and January 1, 2024&lt;/span&gt;, &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;respectively&lt;/span&gt;.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;record a gift card liability for the unfulfilled performance obligation on the date we issue a gift card to a customer. We record revenue and reduce the gift card liability as the customer redeems the gift card. In addition, for gift
            card breakage, we recognize a proportionate amount for the expected unredeemed gift cards over the expected customer redemption period, which is one year. As of March 31, 2025, December 31, 2024, and January 1, 2024, our gift card liability, included in accrued expenses and other liabilities, was $0.3 million, respectively. We recognized gift card revenue of $0.2
            million for the 3 months ended March 31, 2025 and 2024&lt;/span&gt; respectively.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;For the three
            months ended March 31, 2025 and 2024, we recognized $0.1 million in net sales associated with gift cards.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Disaggregated Revenue.&lt;/span&gt;&#160; &lt;/span&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:&lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended March 31,&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(in thousands)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2025&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;16,944&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,085&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Canada&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,850&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,897&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;Other &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;242&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;293&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net sales&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,036&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,275&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"&gt;Geographic sales information is based on the location of the customer. As a percentage of our consolidated net sales, excluding Canada, our
            other international net sales were less than 2.0% for the three months ended March 31, 2025, and 2024, respectively.&lt;/div&gt;
</us-gaap:RevenueFromContractWithCustomerPolicyTextBlock>
    <us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss
      contextRef="c20231231"
      decimals="-5"
      id="Fact_e588f19a4dff44c6a42373882fca3fea"
      unitRef="U002">200000</us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss>
    <us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss
      contextRef="c20241231"
      decimals="-5"
      id="Fact_a7af1d7ef92f47918b89624a285ad7d3"
      unitRef="U002">200000</us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss>
    <us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss
      contextRef="c20250331"
      decimals="-5"
      id="Fact_edc3ae8b7f3e49b2b1f46a9b503bc2cf"
      unitRef="U002">200000</us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss>
    <tlfa:InventoryMerchandiseExpectedToBeReturned
      contextRef="c20231231_RangeAxis_MaximumMember"
      decimals="-5"
      id="Fact_b46978e4b6ed4a84b4c16ce1dbf7aa0f"
      unitRef="U002">100000</tlfa:InventoryMerchandiseExpectedToBeReturned>
    <tlfa:InventoryMerchandiseExpectedToBeReturned
      contextRef="c20250331_RangeAxis_MaximumMember"
      decimals="-5"
      id="Fact_0e387c5791f64d6cbde0de0aa9232b75"
      unitRef="U002">100000</tlfa:InventoryMerchandiseExpectedToBeReturned>
    <tlfa:InventoryMerchandiseExpectedToBeReturned
      contextRef="c20241231_RangeAxis_MaximumMember"
      decimals="-5"
      id="Fact_0640becd4f6f4b37a3f28a66bf0edad6"
      unitRef="U002">100000</tlfa:InventoryMerchandiseExpectedToBeReturned>
    <tlfa:GiftCardRedemptionPeriod
      contextRef="c20250101to20250331"
      id="Fact_ef6516052a6d4f01b2e9f75cac945a60">P1Y</tlfa:GiftCardRedemptionPeriod>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20231231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember"
      decimals="-5"
      id="Fact_4cb43a0c98d541a095f1fc447f8a6dd8"
      unitRef="U002">300000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20241231_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember"
      decimals="-5"
      id="Fact_f34bbbd2a4474b70b21d458e3897f1b7"
      unitRef="U002">300000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="c20250331_BalanceSheetLocationAxis_AccruedLiabilitiesAndOtherLiabilitiesMember"
      decimals="-5"
      id="Fact_67bf553c36124eacadd98edc9cedc4a7"
      unitRef="U002">300000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="c20240101to20240331"
      decimals="-5"
      id="Fact_57a6cafebb4741ebbfea885f9584c8f9"
      unitRef="U002">200000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:ContractWithCustomerLiabilityRevenueRecognized
      contextRef="c20250101to20250331"
      decimals="-5"
      id="Fact_9347ad97939545239d1e49571e1f8d5e"
      unitRef="U002">200000</us-gaap:ContractWithCustomerLiabilityRevenueRecognized>
    <us-gaap:DeferredRevenueRevenueRecognized1
      contextRef="c20240101to20240331"
      decimals="-5"
      id="Fact_489686723e344c4e8a811046d812dbc0"
      unitRef="U002">100000</us-gaap:DeferredRevenueRevenueRecognized1>
    <us-gaap:DeferredRevenueRevenueRecognized1
      contextRef="c20250101to20250331"
      decimals="-5"
      id="Fact_2598d18a303d422999b3b43105ff1776"
      unitRef="U002">100000</us-gaap:DeferredRevenueRevenueRecognized1>
    <us-gaap:DisaggregationOfRevenueTableTextBlock
      contextRef="c20250101to20250331"
      id="Text_524e3cd77d3a44d59ea92697a9305aac">&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; color: rgb(0, 0, 0);"&gt;In the following table, revenue for the three months ended March 31,
          2025 and 2024 is disaggregated by geographic areas as follows:&lt;/span&gt;
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt; &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Three Months Ended March 31,&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: italic;"&gt;(in thousands)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2025&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;United States&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;16,944&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;17,085&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Canada&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,850&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;1,897&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;Other &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;242&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;293&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;Net sales&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,036&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;19,275&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20250101to20250331_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_956048884cb5434fa232deba408d9b23"
      unitRef="U002">16944000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20240101to20240331_StatementGeographicalAxis_US"
      decimals="-3"
      id="Fact_e3e91fe185bb4c0e81df961ce1d56a25"
      unitRef="U002">17085000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20250101to20250331_StatementGeographicalAxis_CA"
      decimals="-3"
      id="Fact_04aed1b8acdc49c8972785db54796bd2"
      unitRef="U002">1850000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20240101to20240331_StatementGeographicalAxis_CA"
      decimals="-3"
      id="Fact_c404198b35f844f78348ef584b3fea01"
      unitRef="U002">1897000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20250101to20250331_StatementGeographicalAxis_OtherCountriesMember"
      decimals="-3"
      id="Fact_56b38c0ce01a4861b718209d9e1c4182"
      unitRef="U002">242000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20240101to20240331_StatementGeographicalAxis_OtherCountriesMember"
      decimals="-3"
      id="Fact_158087bae29a40e8b0ebf0d7f1db7916"
      unitRef="U002">293000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_0a7448285715425db9ee28f8594d4596"
      unitRef="U002">19036000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_0c24726870ef41959447464109b8e6c2"
      unitRef="U002">19275000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20250101to20250331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember"
      decimals="3"
      id="Fact_5bdaaaf3df1c487f8494a6dc95c683fb"
      unitRef="U006">0.02</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="c20240101to20240331_ConcentrationRiskByBenchmarkAxis_SalesRevenueNetMember_ConcentrationRiskByTypeAxis_GeographicConcentrationRiskMember_RangeAxis_MaximumMember_StatementGeographicalAxis_AllOtherCountriesMember"
      decimals="3"
      id="Fact_185da0f431814b059f3e066c3fb08c36"
      unitRef="U006">0.02</us-gaap:ConcentrationRiskPercentage1>
    <tlfa:RevenueRecognitionDiscountsPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_1ecc096bd5034c9a815f1c27c0a69233">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-style: italic; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;Discounts&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-variant: normal; text-transform: none;"&gt;&lt;span style="text-decoration: underline;"&gt;.&lt;/span&gt; &lt;span style="font-style: normal;"&gt;We offer six classes of customer discounts: 1) Retail, 2) Military/First Responder, 3) Business, 4) Commercial, 5) Commercial Pro, and 6) Employees. There
              are no other classe of discounts, and any discounts given will fall into one of these six categories. Such discounts are not
              deemed to be variable consideration nor convey a material right to these customers since the discounted pricing they receive in a discount class is not incremental to others within the same class and there is no retrospective impact of such
              discounts. As a result, sales are reported after deduction of discounts at the point of sale. We do not pay slotting fees or make other payments to resellers.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
</tlfa:RevenueRecognitionDiscountsPolicyTextBlock>
    <tlfa:NumberOfClassesOfCustomerDiscounts
      contextRef="c20250101to20250331"
      decimals="INF"
      id="Fact_0cef2ad5b343413faf36d23edab778f0"
      unitRef="U007">6</tlfa:NumberOfClassesOfCustomerDiscounts>
    <tlfa:NumberOfClassesOfCustomerDiscounts
      contextRef="c20250101to20250331"
      decimals="INF"
      id="Fact_7a0b011abe344ff38a9a9f7a4faa5821"
      unitRef="U007">6</tlfa:NumberOfClassesOfCustomerDiscounts>
    <us-gaap:SellingGeneralAndAdministrativeExpensesPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_49fa23af0ba24397bcf2f832ad5e1fac">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Operating&lt;/span&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&#160;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;expense&lt;/span&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;s&lt;/span&gt;. Operating expenses include all
          selling, general and administrative costs, including wages and benefits, rent and occupancy costs, depreciation, advertising, store operating expenses, outbound freight charges (to ship merchandise to customers), and corporate office costs.&lt;/div&gt;
</us-gaap:SellingGeneralAndAdministrativeExpensesPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_254677ffca6d42ab96ab85c61048f1f3">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Property and equipment, net of accumulated depreciation&lt;/span&gt;&lt;/span&gt;. Property and equipment are stated at cost. Depreciation is
          computed using the straight-line method over the estimated useful lives of the assets, which are &lt;span style="-sec-ix-hidden:Fact_18e8e79a5c4f4291950fe11f11bc251a"&gt;three&lt;/span&gt; to ten years for equipment and machinery, &lt;span style="-sec-ix-hidden:Fact_fbfeb37caee54873be8b0a4087eaa022"&gt;seven&lt;/span&gt;
          to fifteen years for furniture and fixtures, five years for vehicles, and forty years for buildings and related improvements. Leasehold
          improvements are amortized over the lesser of the life of the lease or the useful life of the asset. Repairs and maintenance costs are expensed as incurred but are capitalized if&#160; the related cost extends the life of the assets.&lt;/div&gt;
</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember"
      id="Fact_af4c6e1a3550462c89836c35cdf2c211">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_FurnitureAndFixturesMember_RangeAxis_MaximumMember"
      id="Fact_fe9dfa727a014362890d309d6933ea4d">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_VehiclesMember"
      id="Fact_b67a9eeba97c445893d0e1cf43036620">P5Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife
      contextRef="c20250331_PropertyPlantAndEquipmentByTypeAxis_BuildingAndBuildingImprovementsMember"
      id="Fact_719984424eb041b7b22f0bd0edbb3c28">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:InventoryPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_a368177790cb433bad720854c423e636">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Inventory&lt;/span&gt;&lt;/span&gt;. Inventory is stated at the lower of first-in, first-out (&#x201c;FIFO&#x201d;) cost or net realizable value, and FIFO
          layers are maintained at the location level. Finished goods held for sale include the cost of merchandise purchases, the costs to bring the merchandise to our Texas distribution center, warehousing and handling expenditures, and distributing and
          delivering merchandise to our stores. These costs include depreciation of long-lived assets utilized in acquiring, warehousing and distributing inventory. Manufacturing inventory including raw materials and work-in-process is valued on a first
          in, first out basis using full absorption accounting which includes material, labor, and other applicable manufacturing overhead. Carrying values of inventory are analyzed and, to the extent that the cost of inventory exceeds the net realizable
          value, provisions are made to reduce the carrying amount of the inventory.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We regularly review all inventory items to determine if there are (i) damaged goods (e.g., for leather, excessive scars or damage from ultra-violet (&#x201c;UV&#x201d;) light),
          (ii) items that need to be removed from our product line (e.g., slow-moving items, inability of a supplier to provide items of acceptable quality or quantity, and to maintain freshness in the product line) and (iii) pricing actions that need to
          be taken to adequately value our inventory at the lower of cost or net realizable value.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Since the determination of net realizable value of inventory involves both estimation and judgment with regard to market values and reasonable costs to sell,
          differences in these estimates could result in ultimate valuations that differ from the recorded asset.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The majority of inventory purchases and commitments are paid for in U.S. dollars in order to limit the Company&#x2019;s exposure to foreign currency fluctuations. Goods
          shipped to us are recorded as inventory owned by us when the risk of loss shifts to us from the supplier.&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;br/&gt;
          &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"&gt;(in thousands)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;March 31, 2025&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;December 31, 2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;On hand:&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Finished goods held for sale&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;30,433&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;31,022&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Raw materials and work in process&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;1,251&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;1,819&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Inventory in transit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;2,666&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;2,715&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;TOTAL&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;34,350&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;35,556&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="c20250101to20250331"
      id="Text_990ec3ab0bdb4cb283f52a861f1f341f">
&lt;div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;Inventory is physically counted partially during each quarter and fully at year-end in the Texas distribution center. At the store level,
          inventory is partially counted each quarter for high value items and fully at year-end. Inventory is then adjusted in our accounting system to reflect actual count results. &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: #000000; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"&gt;(in thousands)&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;March 31, 2025&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;December 31, 2024&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;On hand:&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Finished goods held for sale&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;30,433&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;31,022&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Raw materials and work in process&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;1,251&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%;" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;1,819&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Inventory in transit&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;2,666&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0);"&gt;2,715&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
                &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;TOTAL&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;34,350&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0);" valign="bottom"&gt;
                &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;35,556&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoods
      contextRef="c20250331"
      decimals="-3"
      id="Fact_092cf39fd14b4414bf3f505575b7274d"
      unitRef="U002">30433000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="c20241231"
      decimals="-3"
      id="Fact_b60b0c77c9364ef6b92f6cfd16415e3a"
      unitRef="U002">31022000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryWorkInProcessAndRawMaterials
      contextRef="c20250331"
      decimals="-3"
      id="Fact_fa717c89225c4535b12abab20c0eaa91"
      unitRef="U002">1251000</us-gaap:InventoryWorkInProcessAndRawMaterials>
    <us-gaap:InventoryWorkInProcessAndRawMaterials
      contextRef="c20241231"
      decimals="-3"
      id="Fact_300a15b849ca418ab86d554db3a3d68d"
      unitRef="U002">1819000</us-gaap:InventoryWorkInProcessAndRawMaterials>
    <us-gaap:OtherInventoryInTransit
      contextRef="c20250331"
      decimals="-3"
      id="Fact_924c085dbb6c4bbfadf245774384eca3"
      unitRef="U002">2666000</us-gaap:OtherInventoryInTransit>
    <us-gaap:OtherInventoryInTransit
      contextRef="c20241231"
      decimals="-3"
      id="Fact_454a9cb99a7d47eca16be19571fa461f"
      unitRef="U002">2715000</us-gaap:OtherInventoryInTransit>
    <us-gaap:InventoryNet
      contextRef="c20250331"
      decimals="-3"
      id="Fact_4acadb224ce4479f9f8309176d8b6e87"
      unitRef="U002">34350000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="c20241231"
      decimals="-3"
      id="Fact_c02871136ed74093a254ab179b80d368"
      unitRef="U002">35556000</us-gaap:InventoryNet>
    <us-gaap:LesseeLeasesPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_901331bdc6cf42a4980504556d7bfd14">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-style: italic;"&gt;Leases&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;.&lt;/span&gt; We lease real estate for our principal offices (including
          distribution center), retail store locations and may lease warehouse equipment for our Texas distribution center under long-term lease agreements. We determine if an arrangement is a lease at inception and recognize right-of-use (&#x201c;ROU&#x201d;) assets
          and lease liabilities at commencement date based on the present value of the lease payments over the lease term.&lt;span style="color: rgb(0, 0, 0);"&gt; We elected not to record leases with an initial term of 12 months or less on the balance sheet for
            all our asset classes.&lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;For operating leases, the present value of our lease liabilities may include: (1) rental payments adjusted for inflation or market rates, and (2) lease terms with
          options to renew the lease or options to purchase leased equipment, when it is reasonably certain we will exercise such an option. The exercise of lease renewal or purchase option is generally at our discretion.&#160; Payments based on a change in an
          index or market rate are not considered in the determination of lease payments for purposes of measuring the related lease liability. We discount lease payments using our incremental borrowing rate based on information available as of the
          measurement date.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We recognize rent expense related to our &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;operating leases assets on a straight-line basis over the lease term. Rent expense is recorded in operating expenses.&lt;br/&gt;
          &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;For finance leases, our right-of-use assets are amortized on a straight-line basis over the earlier of the useful life of the right-of-use asset or the end of the
          lease term with rent expense recorded to operating expenses.&#160; We adjust the lease liability to reflect lease payments made during the period and interest incurred on the lease liability using the effective interest method. &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;The interest expense incurred is recorded in interest expense on the Consolidated Statements of
            Operations and Comprehensive Income&lt;/span&gt;.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term. We also perform interim reviews of our lease
          assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. None of our lease agreements contain contingent rental payments, material residual value guarantees or material
          restrictive covenants. We have no sublease agreements and no lease agreements in which we are named as a lessor.&lt;/div&gt;
</us-gaap:LesseeLeasesPolicyTextBlock>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_ebeff7a2f6b945f89eacb4a31d24eec1">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Impairment of Long-Lived Assets&lt;/span&gt;&lt;/span&gt;. We evaluate long-lived assets on a quarterly basis to identify events or changes in
          circumstances (&#x201c;triggering events&#x201d;) that indicate the carrying value of certain assets may not be recoverable. Upon the occurrence of a triggering event, ROU lease assets, property and equipment and definite-lived intangible assets are reviewed
          for impairment and an impairment loss is recorded in the period in which it is determined that the carrying amount of the assets is not recoverable. The determination of recoverability is made based upon the estimated undiscounted future net cash
          flows of assets grouped at the lowest level for which there are identifiable cash flows independent of the cash flows of other groups of assets with such cash flows to be realized over the estimated remaining useful life of the primary asset
          within the asset group. The Company determined the lowest level of identifiable cash flows that are independent of other asset groups to be primarily at the individual store level. If the estimated undiscounted future net cash flows for a given
          store are less than the carrying amount of the related store assets, an impairment loss is determined by comparing the estimated fair value with the carrying value of the related assets. The impairment loss is then allocated across the asset
          group&#x2019;s major classifications which in this case are operating lease assets and property and equipment. Triggering events at the store level could include material declines in operational and financial performance or planned changes in the use of
          assets, such as store relocation or store closure. This evaluation requires management to make judgements relating to future cash flows, growth rates and economic and market conditions. The fair value of an asset group is estimated using a
          discounted cash flow valuation method.&lt;/div&gt;
</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy
      contextRef="c20250101to20250331"
      id="Text_923b48d0868141ba99975bf649556eaa">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Fair Value of Financial Instruments&lt;/span&gt;&lt;/span&gt;. We measure fair value as an exit price, which is the amount that would be
          received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering such assumptions, accounting standards establish a three-tier fair value hierarchy, which prioritizes the
          inputs used in the valuation methodologies in measuring fair value:&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 36pt; vertical-align: top;"&gt;
                  &lt;div style="margin-left: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#x25cf;&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify;"&gt;Level 1 &#x2013; observable inputs that reflect quoted prices in active markets for identical assets or liabilities.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 36pt; vertical-align: top;"&gt;
                  &lt;div style="margin-left: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#x25cf;&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify;"&gt;Level 2 &#x2013; significant observable inputs other than quoted prices in active markets for similar assets and liabilities, such as quoted prices for identical or similar assets or liabilities in markets that
                    are not active; or other inputs that are observable or can be corroborated by observable market data.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 36pt; vertical-align: top;"&gt;
                  &lt;div style="margin-left: 18pt;"&gt;&lt;span style="font-family: 'Times New Roman';"&gt;&#x25cf;&lt;/span&gt;&lt;/div&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify;"&gt;Level 3 &#x2013; significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
          &lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
          &lt;/div&gt;

        &lt;/div&gt;

&lt;div&gt;&lt;span style="font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;Classification of the financial asset or liability within the hierarchy is
          determined based on the lowest level input that is significant to the fair value measurement. &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Our principal financial instruments held consist of T-Bills as of March 31, 2025, which fall under level 1 of the fair value hierarchy and accounts receivable -
          trade, accounts payable - &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;trade, which fall under Level 3 of the fair
            value hierarchy&lt;/span&gt;. As of March 31, 2025 and December 31, 2024, the carrying values of our financial instruments included in our Consolidated Balance Sheets approximated their fair values. There were no transfers into or out of Levels 1, 2 and 3 during the three months ended March 31, 2025 and 2024.&lt;/div&gt;
</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet
      contextRef="c20240101to20240331"
      decimals="0"
      id="Fact_648bfa7d3dc74df592a882fd9e3057e4"
      unitRef="U002">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet
      contextRef="c20250101to20250331"
      decimals="0"
      id="Fact_2300489a5835437688fc15456836266e"
      unitRef="U002">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet>
    <us-gaap:IncomeTaxPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_f7d697c35bd24078803a3f7d6ab1f36c">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Income Taxes&lt;/span&gt;&lt;/span&gt;. Income taxes are estimated for each jurisdiction in which we operate. This involves assessing current
          tax exposure together with temporary differences resulting from differing treatment of items for tax and financial statement accounting purposes. Any resulting deferred tax assets are evaluated for recoverability based on estimated future taxable
          income. To the extent it is more-likely-than-not that all or a portion of a deferred tax asset will not be realized, a valuation allowance is recorded. Our evaluation regarding whether a valuation allowance is required or should be adjusted also
          considers, among other things, the nature, frequency, and severity of recent losses, forecasts of future profitability and the duration of statutory carryforward periods.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Deferred tax assets and liabilities are measured using the enacted tax rates in effect in the years when those temporary differences are expected to reverse. The
          effect on deferred taxes from a change in tax rate is recognized through continuing operations in the period that includes the enactment date of the change. Changes in tax laws and rates could affect recorded deferred tax assets and liabilities
          in the future.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;A tax benefit from an uncertain tax position may be recognized when it is more-likely-than-not that the position will be sustained upon examination, including
          resolutions of any related appeals or litigation processes, based on the technical merits. Income tax positions must meet a more-likely-than-not recognition threshold to be recognized.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgment changes as a result of the evaluation of new information not
          previously available. Due to the complexity of some of these uncertainties, the ultimate resolution may result in a payment that is materially different from the current estimate of the tax liabilities. These differences will be reflected as
          increases or decreases to income tax expense and the effective tax rate in the period in which new information becomes available. We recognize interest and/or penalties related to all tax positions in income tax expense. To the extent that
          accrued interest and penalties do not ultimately become payable, amounts accrued will be reduced and reflected as a reduction of the overall income tax provision in the period that such determination is made.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We may be subject to periodic audits by the Internal Revenue Service and other taxing authorities. These audits may challenge certain of our tax positions, such as
          the timing and amount of deductions and allocation of taxable income to the various jurisdictions.&lt;/div&gt;
</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy
      contextRef="c20250101to20250331"
      id="Text_8aa5b4b234694e06aa16da119be56771">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Stock-based compensation&lt;/span&gt;&lt;/span&gt;. The Company&#x2019;s stock-based compensation relates primarily to restricted stock unit (&#x201c;RSU&#x201d;)
          awards. Accounting guidance requires measurement and recognition of compensation expense at an amount equal to the grant date fair value. Compensation expense is recognized for service-based stock awards on a straight-line basis or ratably over
          the requisite service period, based on the closing price of the Company&#x2019;s stock on the date of grant. The service-based awards typically vest ratably over the requisite service period, provided that the participant is employed on the vesting
          date. Compensation expense is reduced by actual forfeitures as they occur over the requisite service period of the awards.&lt;/div&gt;

&lt;div&gt;&lt;br/&gt;&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Performance-based RSUs vest, if at all, upon the Company satisfying certain performance targets. The Company records compensation expense for awards with a
          performance condition when it is probable that the condition will be achieved. If the Company determines it is not probable a performance condition will be achieved, no compensation expense is recognized. If the Company changes its assessment in
          a subsequent period and concludes it is probable a performance condition will be achieved, the Company will recognize compensation expense ratably between the period of the change in assessment through the expected date of satisfying the
          performance condition for vesting. If the Company subsequently assesses that it is no longer probable that a performance condition will be achieved, the accumulated expense that has been previously recognized will be reversed. The compensation
          expense ultimately recognized, if any, related to performance-based awards will equal the grant date fair value based on the number of shares for which the performance condition has been satisfied. We issue shares from authorized shares upon the
          lapsing of vesting restrictions on RSUs. We do not use cash to settle equity instruments issued under stock-based compensation awards. &lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration-style: initial; text-decoration-color: initial; display: inline ! important; float: none;"&gt;The payments of the employees&#x2019; tax liability for a portion of the vested shares are generally satisfied by withholding shares with a fair value equal to the tax
            liability&lt;/span&gt;.&lt;/div&gt;
</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:CreditLossFinancialInstrumentPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_0fe8693fd2474d8facae9f57264b2a65">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Accounts Receivable - Trade and Expected Credit Losses&lt;/span&gt;&lt;/span&gt;. Our receivables primarily arise from the sale of merchandise
          to customers that have applied for and been granted credit. Accounts receivable are stated at amounts due, net of an allowance. Accounts receivable are generally due within 30 days of invoicing. We estimate expected credit losses based on factors
          such as the composition of accounts receivable, the age of the accounts, historical bad debt experience, and our evaluation of the financial condition and past collection history of each customer. Management believes that the historical loss
          information it has compiled is a reasonable base on which to determine expected credit losses for trade receivables held at March 31, 2025, because the composition of the trade receivables at that date is consistent with that used in developing
          the historical credit-loss percentages (i.e., the similar risk characteristics of its customers and its credit practices have not changed significantly over time). Accordingly, the allowance for expected credit losses at March 31, 2025, December
          31, 2024, and January 1, 2024 each totaled less than $0.1 million.&lt;/div&gt;
</us-gaap:CreditLossFinancialInstrumentPolicyTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="c20250331"
      decimals="-5"
      id="Fact_e45edc655ba54bdeba08b76de2545f7f"
      unitRef="U002">100000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="c20231231"
      decimals="-5"
      id="Fact_b7cf416ebba3458eb8ceabb1e8a2f10f"
      unitRef="U002">100000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:AllowanceForDoubtfulAccountsReceivable
      contextRef="c20241231"
      decimals="-5"
      id="Fact_2e5c71bada084afcb5211221c56476d1"
      unitRef="U002">100000</us-gaap:AllowanceForDoubtfulAccountsReceivable>
    <us-gaap:IntangibleAssetsFiniteLivedPolicy
      contextRef="c20250101to20250331"
      id="Text_aea61aea53a244ec8ec68e52e0ab7446">
&lt;div style="font-family: 'Times New Roman'; font-size: 10pt; text-align: justify;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Other Intangible Assets&lt;/span&gt;&lt;/span&gt;. Our intangible assets and related accumulated amortization relate to trademarks and
          copyrights that are definite-lived intangibles and are subject to amortization. The weighted average amortization period is 15 years
          for trademarks and copyrights. Amortization expense related to other intangible assets was less than $0.01 million during each of
          the 3 months ended March 31, 2025 and 2024. Based on the current amount of intangible assets subject to amortization, we estimate amortization expense to be less than $0.01 million annually over the next five years.&lt;br/&gt;
        &lt;/div&gt;
</us-gaap:IntangibleAssetsFiniteLivedPolicy>
    <us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife
      contextRef="c20250101to20250331_FiniteLivedIntangibleAssetsByMajorClassAxis_IntellectualPropertyMember"
      id="Fact_e563d590d911419499514399452cd132">P15Y</us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20250101to20250331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_82a6149adb8648c19f71ab42db1b6342"
      unitRef="U002">10000.00</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="c20240101to20240331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_50b4f307aeff4e46a2f0e47a5ff146da"
      unitRef="U002">10000.00</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
      contextRef="c20250331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_a6061e7b6d114e87b70d8c13c2fce522"
      unitRef="U002">10000.00</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
      contextRef="c20250331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_8ecc01205fa640079ab8c9b910edbc12"
      unitRef="U002">10000.00</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear
      contextRef="c20250331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_245ffd00be9643ecb54ddaaf68c9febd"
      unitRef="U002">10000.00</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="c20250331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_1d60e6d74fd347a2a4a028a886729fe6"
      unitRef="U002">10000.00</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="c20250331_RangeAxis_MaximumMember"
      decimals="-4"
      id="Fact_1b68145a01fd43a5b38509598e5852d8"
      unitRef="U002">10000.00</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:ComprehensiveIncomePolicyPolicyTextBlock
      contextRef="c20250101to20250331"
      id="Text_1682801bb78b4ace8c5f2da74931a983">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="text-decoration: underline;"&gt;Comprehensive Income&lt;/span&gt;&lt;/span&gt;. Comprehensive income includes net income or loss and certain other items that are recorded
          directly to stockholders&#x2019; equity. The Company&#x2019;s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.&lt;/div&gt;
</us-gaap:ComprehensiveIncomePolicyPolicyTextBlock>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="c20250101to20250331"
      id="Text_14113390f38048bf8021bb74c82d2345">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;2. NOTES PAYABLE AND LONG-TERM DEBT&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;On
          January 3, 2023, the Company entered into a credit agreement (the &#x201c;Credit Agreement&#x201d;) with JPMorgan Chase Bank, N.A. Under the Credit Agreement, the bank provides the Company a credit facility of up to $5,000,000 on standard terms and conditions, including affirmative and negative covenants set forth in the Credit Agreement.&#160; As security for the credit facility, the Company
          has pledged, as collateral, certain of its assets, including the Company&#x2019;s cash in deposit accounts, inventory and equipment. The interest rate is based on CME term &lt;span style="-sec-ix-hidden:Fact_b5db66dcfea64781bc8c2674442dccb3"&gt;SOFR&lt;/span&gt; + &lt;span style="-sec-ix-hidden:Fact_dec83329e0ed457cae86bd2da01523fc"&gt;210&lt;/span&gt; basis points, and the maturity is 1 year.&#160; As of the date of this filing, no
          funds had been borrowed under this facility, and we are in compliance with all covenants.&lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: left; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;In the fourth quarter of 2024, the Company renewed the promissory note under its Credit Agreement with JPMorgan Chase Bank, N.A. through October 31, 2025 under the same terms as above. &lt;/span&gt; &lt;/div&gt;
</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"
      decimals="0"
      id="Fact_26ed3ad965dd437ba8f4f0487c9968ce"
      unitRef="U002">5000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentTerm
      contextRef="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"
      id="Fact_6e2b01148b75488d96406b0d914703df">P1Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="c20250101to20250331_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember"
      decimals="0"
      id="Fact_b38595d293384a099edcca191d5dd0ec"
      unitRef="U002">0</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="c20250101to20250331"
      id="Text_4562bace87dd40deb127034024eac5af">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;3.&#160; INCOME TAX&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Our effective tax rate for the three months ended March 31, 2025 and 2024 was 24.8% and 25.7%, respectively. Our effective tax rate differs from the federal
        statutory rate primarily due to U.S. state income tax expense, expenses that are nondeductible for tax purposes, the change in our valuation allowance associated with our deferred tax assets, and differences in tax rates in foreign jurisdictions.&lt;/div&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20250101to20250331"
      decimals="3"
      id="Fact_6bda7e88362c4f9dafa015fc0ee9da61"
      unitRef="U006">0.248</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="c20240101to20240331"
      decimals="3"
      id="Fact_c80e028f70b94d56a3f8d18ebf5b7910"
      unitRef="U006">0.257</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="c20250101to20250331"
      id="Text_ed7e3c7e3c5b4e58997921a98d4673d6">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;4.&#160; STOCK-BASED COMPENSATION&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Tandy Leather Factory, Inc. 2013 Restricted Stock Plan (the &#x201c;2013 Plan&#x201d;) was adopted by our Board of Directors in January 2013 and approved by our stockholders in
        June 2013. The 2013 Plan initially reserved up to 300,000 shares for restricted stock and restricted stock unit (&#x201c;RSU&#x201d;) awards to our
        executive officers, non-employee directors and other key employees. In June 2020, our stockholders approved an increase to the plan reserve to 800,000
        shares of our common stock and extended the 2013 Plan to June 2023. Awards granted under the 2013 Plan may be service-based awards or performance-based awards and may be subject to a graded vesting schedule with a minimum vesting period of four years, unless otherwise determined by the Compensation Committee of the Board of Directors that administers the plan. All shares remaining
        ungranted under the 2013 Plan were canceled upon the adoption of the new 2023 Plan described below.&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Tandy Leather Factory, Inc. 2023 Incentive Stock Plan (the &#x201c;2023 Plan&#x201d; and, together with the 2013 Plan, the &#x201c;Plans&#x201d;) was adopted by our Board of Directors in
          April 2023 and approved by our stockholders in June 2023.&#160; The 2023 Plan initially reserved up to &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;800,000&lt;/span&gt; shares of our common stock for a variety of equity
          awards (including, but not limited to, RSUs, the only type of awards that have been granted to date) to our executive officers, non-employee directors and other key employees.&#160; In June 2023, as part of their annual director compensation, certain
          of our non-employee directors were granted a total of &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;12,993&lt;/span&gt; service-based RSUs under the 2023 Plan, which will vest ratably over the next &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;four years&lt;/span&gt;, subject to each participant&#x2019;s continued service on the board as of each vesting date.&#160; In March 2024, the Company granted to certain employees a total of
          &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;59,649&lt;/span&gt; RSUs under the 2023 Plan, which will vest ratably over the next &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;three years&lt;/span&gt;, subject to the recipients&#x2019; continued employment as of each vesting date. In June 2024, the Company granted &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;14,000&lt;/span&gt;
          shares to various members of the Board of Directors, which will vest ratably over the next &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;four years&lt;/span&gt;, subject to each participant&#x2019;s continued service on the board
          as of each vesting date.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;A summary of the activity for restricted stock and RSU awards as of March 31, 2025 is presented below:&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Shares&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt; (in thousands)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Weighted Average &lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Share Price&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Balance, January 1, 2025&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;409&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.32&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Granted&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;1000&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.61&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Forfeited&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;(308&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.26&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Vested&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;(16&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.36&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;Balance, &lt;span style="text-indent: 0pt;"&gt;March 31&lt;/span&gt;, 2025&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;1,085&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;4.01&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 22.5pt; vertical-align: top; text-align: left;"&gt;&lt;sup&gt;(1)&lt;/sup&gt;&lt;br/&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Grant of 900,000 shares pending approval of the Company&#x2019;s stockholders at the 2025 annual meeting.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify;"&gt; &lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt;The
          Company&#x2019;s stock-based compensation relates primarily to RSU awards. For these service-based awards, our stock-based compensation expense, included in operating expenses, was $0.1 million and $0.2 million for the three months ended March 31, 2025 and
          March 31, 2024 respectively. &lt;/span&gt;&lt;/div&gt;

&lt;div style="text-align: justify;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As of March 31, 2025, there was unrecognized compensation cost related to non-vested, RSU awards of $0.6 million, which will be recognized in each of the following years (dollars in thousands):&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic; text-align: center;"&gt;&lt;span style="font-style: normal; font-weight: bold;"&gt;Unrecognized Expense&lt;/span&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;"&gt;2025&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;399&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; width: 88%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;"&gt;2026&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;185&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;2027&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;34&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;2028&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;5&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; width: 88%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;623&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We issue shares from authorized shares upon the lapsing of vesting restrictions on restricted stock and RSUs. For the three months ended March 31, 2025 and 2024, we
        issued 15,973 and 2,727
        shares, respectively, resulting from the vesting of RSUs.&#160; We do not use cash to settle equity instruments issued under stock-based compensation awards.&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 13.3333px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; display: inline !important; float: none;"&gt;&#160;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; text-align: justify; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; background-color: rgb(255, 255, 255); text-decoration-style: initial; text-decoration-color: initial;"&gt;The payment of the employees&#x2019; tax liability for a portion of the vested shares may be satisfied by withholding shares with a fair value equal
          to the tax liability.&lt;/span&gt;&lt;/div&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="c20130131_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember_RangeAxis_MaximumMember"
      decimals="0"
      id="Fact_e0670a3cee7048bc8272c5c482eadb74"
      unitRef="U001">300000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="c20200630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndThirteenRestrictedStockPlanMember"
      decimals="0"
      id="Fact_b42e0a32b2254f7ca0dba7fc5f0d423b"
      unitRef="U001">800000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20250101to20250331_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MinimumMember"
      id="Fact_93f0c385386b4f91b0c3c2e77b1ef095">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="c20230430_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_RangeAxis_MaximumMember"
      decimals="0"
      id="Fact_0feb2f6189bc47f6be969e4c2ebfcc38"
      unitRef="U001">800000</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20230601to20230630_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember"
      decimals="0"
      id="Fact_f0f72bf6b83a4f528d49941f761b6837"
      unitRef="U001">12993</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_NonEmployeeDirectorMember"
      id="Fact_f0db0518886f4f3ba9d40ce00f186a97">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20240301to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"
      decimals="0"
      id="Fact_bf114a9ee29a49f39d2b2098949e05cb"
      unitRef="U001">59649</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"
      id="Fact_86de1d3b405b42428292ab55435f7043">P3Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20240601to20240630_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember"
      decimals="0"
      id="Fact_b833c72088db45f1bb8a3cdd9ac27828"
      unitRef="U001">14000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember_PlanNameAxis_TwoThousandAndTwentyThreeRestrictedStockPlanMember_TitleOfIndividualAxis_DirectorMember"
      id="Fact_e08fdacbd65a40cfa8cdd96d093f5c44">P4Y</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1>
    <us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock
      contextRef="c20250101to20250331"
      id="Text_ba59d5c9e89f4478bb3b5e03117d2574">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;A summary of the activity for restricted stock and RSU awards as of March 31, 2025 is presented below:&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Shares&lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt; (in thousands)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Weighted Average &lt;/div&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Share Price&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Balance, January 1, 2025&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;409&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.32&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Granted&lt;sup&gt;(1)&lt;/sup&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;1000&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.61&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Forfeited&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;(308&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.26&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Vested&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;(16&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;)&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;4.36&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;Balance, &lt;span style="text-indent: 0pt;"&gt;March 31&lt;/span&gt;, 2025&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;1,085&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;4.01&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div&gt; &lt;br/&gt;
      &lt;/div&gt;

&lt;div&gt;
          &lt;table cellpadding="0" cellspacing="0" class="DSPFListTable" style="font-family: 'Times New Roman'; font-size: 10pt; width: 100%; text-align: left; color: #000000; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="width: 22.5pt; vertical-align: top; text-align: left;"&gt;&lt;sup&gt;(1)&lt;/sup&gt;&lt;br/&gt;
                &lt;/td&gt;

    &lt;td style="width: auto; vertical-align: top;"&gt;
                  &lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Grant of 900,000 shares pending approval of the Company&#x2019;s stockholders at the 2025 annual meeting.&lt;/div&gt;
                &lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
        &lt;/div&gt;
</us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20241231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="-3"
      id="Fact_2ee805f2763442c2a14d4d35b4520d6d"
      unitRef="U001">409000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20241231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="2"
      id="Fact_0bd081a0d6fe4ae5b3b30d4f2db55910"
      unitRef="U003">4.32</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="-3"
      id="Fact_0e2f76ca8f8a4dd3855c17ba90c36408"
      unitRef="U001">1000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="2"
      id="Fact_d03490cb70344061a8a0d00416a40a4b"
      unitRef="U003">4.61</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="-3"
      id="Fact_d4e82661b4b942c3aba8c0ab9303aaa6"
      unitRef="U001">308000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="2"
      id="Fact_84fef0d3378540bd8be1b05b4760f617"
      unitRef="U003">4.26</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="-3"
      id="Fact_4966533097394481bf8fb92d21b39b07"
      unitRef="U001">16000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="2"
      id="Fact_a05eb7b478bc4dd8b60e1a3bba20fa19"
      unitRef="U003">4.36</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
      contextRef="c20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="-3"
      id="Fact_894cc1f296d04bddb4218f18ddf2babf"
      unitRef="U001">1085000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue
      contextRef="c20250331_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember"
      decimals="2"
      id="Fact_f2dd8caab8f74be987d58595a01ae44f"
      unitRef="U003">4.01</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue>
    <tlfa:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval
      contextRef="c20250101to20250331"
      decimals="0"
      id="Fact_3e0ebf340c3f49cba1aedc327e5fca55"
      unitRef="U001">900000</tlfa:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsPendingApproval>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20250101to20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-5"
      id="Fact_5ab002b6ab7340df856627cb929f9f62"
      unitRef="U002">100000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="c20240101to20240331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-5"
      id="Fact_a5330258f160487e98f5964c859fdcff"
      unitRef="U002">200000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock
      contextRef="c20250101to20250331"
      id="Text_b39d00721926460fb096054641622688">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;As of March 31, 2025, there was unrecognized compensation cost related to non-vested, RSU awards of $0.6 million, which will be recognized in each of the following years (dollars in thousands):&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic; text-align: center;"&gt;&lt;span style="font-style: normal; font-weight: bold;"&gt;Unrecognized Expense&lt;/span&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: 2px solid rgb(0, 0, 0);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;"&gt;2025&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;$ &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;399&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; width: 88%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); text-align: center;"&gt;2026&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;185&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;2027&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;34&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; text-align: center; width: 88%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;2028&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;5&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; text-align: left; width: 88%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 double 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0); font-weight: bold;"&gt;623&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-5"
      id="Fact_c3a980709a8a458497228b92c0d9b165"
      unitRef="U002">600000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <tlfa:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths
      contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-3"
      id="Fact_937311f56bf74a5295527771b5755f7b"
      unitRef="U002">399000</tlfa:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths>
    <tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears
      contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-3"
      id="Fact_02ad1740defa4e2a8c97ea72fcf604ce"
      unitRef="U002">185000</tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears>
    <tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears
      contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-3"
      id="Fact_0dd712f9bded4523bbcec5b6f1338efc"
      unitRef="U002">34000</tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears>
    <tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears
      contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-3"
      id="Fact_427ef7161c6b448aaabd716b4ed15899"
      unitRef="U002">5000</tlfa:EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="c20250331_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember"
      decimals="-3"
      id="Fact_9533b6ce56a548cebf2ed027e249aac5"
      unitRef="U002">623000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockUnitsRSUMember"
      decimals="0"
      id="Fact_a09e4c97a08445769eb85654cc79de13"
      unitRef="U001">15973</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross
      contextRef="c20240101to20240331_AwardTypeAxis_RestrictedStockUnitsRSUMember"
      decimals="0"
      id="Fact_acc7cdb370664fe892ca61f5724c6e85"
      unitRef="U001">2727</us-gaap:StockIssuedDuringPeriodSharesRestrictedStockAwardGross>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="c20250101to20250331"
      id="Text_c57b479b59374378990b712e214cfea3">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;5.&#160; EARNINGS PER SHARE&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Basic earnings per share (&#x201c;EPS&#x201d;) are computed based on the weighted average number of common shares outstanding during the period. Diluted EPS includes additional
        common shares that would have been outstanding if potential common shares with a dilutive effect, such as stock awards from the Company&#x2019;s restricted stock plan, had been issued.&#160; Anti-dilutive securities represent potentially dilutive securities
        which are excluded from the computation of diluted EPS as their impact would be anti-dilutive.&#160; Diluted EPS is computed using the treasury stock method.&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table sets forth the computation of basic and diluted EPS for the three months ended March 31, 2025 and 2024:&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Three Months Ended March 31,&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&lt;span style="font-style: italic;"&gt;(in thousands, except share data)&lt;/span&gt; &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;2025&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; font-weight: bold;" valign="bottom"&gt;Numerator:&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Net income&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;12,676&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;525&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;Denominator:&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Basic weighted-average common shares outstanding&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,501,204&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,400,354&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 76%;" valign="bottom"&gt;
              &lt;div style="margin-top: 0px; margin-bottom: 0px; text-align: left; text-indent: 9pt;"&gt;Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;9,460&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;5,108&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;Dilutive effect of service-based restricted stock awards granted to employees under the Plan&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;84,656&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;94,892&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Diluted weighted-average common shares outstanding&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,595,320&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,500,354&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;Basic earnings per share &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;1.49&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;0.06&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Diluted earnings per share&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;1.47&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;0.06&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="c20250101to20250331"
      id="Text_1e53a64eefa24f2c9817a9b37d701a7c">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The following table sets forth the computation of basic and diluted EPS for the three months ended March 31, 2025 and 2024:&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
      &lt;/div&gt;

&lt;table border="0" cellpadding="0" cellspacing="0" class="cfttable" style="color: #000000; font-family: 'Times New Roman'; font-size: 10pt; text-align: left; width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-style: italic;"&gt;&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="6" style="vertical-align: bottom; border-bottom: #000000 solid 2px; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;Three Months Ended March 31,&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&lt;span style="font-style: italic;"&gt;(in thousands, except share data)&lt;/span&gt; &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;2025&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; padding-bottom: 2px;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
              &lt;div style="text-align: center; color: rgb(0, 0, 0); font-weight: bold;"&gt;2024&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; font-weight: bold;" valign="bottom"&gt;Numerator:&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" rowspan="1" style="vertical-align: bottom; text-align: right;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 16.2pt; color: rgb(0, 0, 0);"&gt;Net income&lt;br/&gt;
              &lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;12,676&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;$&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;525&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0); font-weight: bold;"&gt;Denominator:&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; background-color: #CCEEFF;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Basic weighted-average common shares outstanding&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,501,204&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,400,354&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; width: 76%;" valign="bottom"&gt;
              &lt;div style="margin-top: 0px; margin-bottom: 0px; text-align: left; text-indent: 9pt;"&gt;Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;9,460&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;5,108&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none; text-indent: 9pt; width: 76%; padding-bottom: 2px; background-color: #CCEEFF;" valign="bottom"&gt;Dilutive effect of service-based restricted stock awards granted to employees under the Plan&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;84,656&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: #000000 solid 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;94,892&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 2px; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;
              &lt;div style="text-indent: -7.2pt; margin-left: 7.2pt; color: rgb(0, 0, 0);"&gt;Diluted weighted-average common shares outstanding&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,595,320&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
              &lt;div style="color: rgb(0, 0, 0);"&gt;8,500,354&lt;/div&gt;
            &lt;/td&gt;

    &lt;td colspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; background-color: rgb(204, 238, 255);" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px;" valign="bottom"&gt;Basic earnings per share &lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;1.49&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;0.06&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td rowspan="1" style="vertical-align: bottom; width: 76%; padding-bottom: 4px; background-color: rgb(204, 238, 255);" valign="bottom"&gt;Diluted earnings per share&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;1.47&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&lt;br/&gt;
            &lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;0.06&lt;/td&gt;

    &lt;td colspan="1" rowspan="1" style="text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_be713568d8ed453691dd1940440e987b"
      unitRef="U002">12676000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="c20240101to20240331"
      decimals="-3"
      id="Fact_0b91a449425b4f10a417ef52bdaecb9b"
      unitRef="U002">525000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20250101to20250331"
      decimals="0"
      id="Fact_651ae5caa4e44a61a75064b0557e3797"
      unitRef="U001">8501204</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="c20240101to20240331"
      decimals="0"
      id="Fact_75c3b36a6c1b45598e6bdc8d4527e5b0"
      unitRef="U001">8400354</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember"
      decimals="0"
      id="Fact_1919d62914cf4c32a3fcdf611b78fb30"
      unitRef="U001">9460</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_DirectorMember"
      decimals="0"
      id="Fact_a5a4154de1844515a40a6e256cda1b66"
      unitRef="U001">5108</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20250101to20250331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"
      decimals="0"
      id="Fact_0724c696941b442eb1f4be736ba59c83"
      unitRef="U001">84656</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="c20240101to20240331_AwardTypeAxis_RestrictedStockMember_TitleOfIndividualAxis_ShareBasedPaymentArrangementEmployeeMember"
      decimals="0"
      id="Fact_4b438c02a6a24dddbf14188c83ca47cb"
      unitRef="U001">94892</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20250101to20250331"
      decimals="0"
      id="Fact_937e0d1f0a4647b9811d52a76c784156"
      unitRef="U001">8595320</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="c20240101to20240331"
      decimals="0"
      id="Fact_86a8c8d1d8e94a2d9d09f782fa00471d"
      unitRef="U001">8500354</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20250101to20250331"
      decimals="2"
      id="Fact_5be4985f521d470ca4e14a3c94b04364"
      unitRef="U003">1.49</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c20240101to20240331"
      decimals="2"
      id="Fact_42cc26f6eb504412a9f1bee243c56854"
      unitRef="U003">0.06</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20250101to20250331"
      decimals="2"
      id="Fact_86ef86afd4954529bcd18155b8938297"
      unitRef="U003">1.47</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c20240101to20240331"
      decimals="2"
      id="Fact_dd7a0fd8d59b4f2cafd7234c5b74bbae"
      unitRef="U003">0.06</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="c20250101to20250331"
      id="Text_7489146fd61c4f6eaee00c250001f24a">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;6.&#160; COMMITMENTS AND CONTINGENCIES&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;Legal Proceedings&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;We are periodically involved in litigation that arises in the ordinary course of business and operations. There are no such matters pending that we expect to have a
          material impact on our financial position or operating results. Legal costs associated with the resolution of claims, lawsuits and other contingencies are expensed as incurred.&lt;/div&gt;
</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <tlfa:ShareRepurchaseProgramAndShareRepurchasesTextBlock
      contextRef="c20250101to20250331"
      id="Text_a41e88e2bd524f47863e75928f9c401f">
&lt;div style="text-align: justify; font-weight: bold; font-family: 'Times New Roman'; font-size: 10pt;"&gt;7.&#160; SHARE REPURCHASE PROGRAM AND SHARE REPURCHASES&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;On August 8, 2022, the Board of Directors approved a new program to repurchase up to $5.0 million of the Company&#x2019;s common stock between that date and August 31, 2024.&#160; As of August 31, 2024, the Company had purchased less than $10,000 of shares under this plan. &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt; &lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman'; font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;On September 17, 2024, the Board of Directors approved&#160;the renewal of the stock repurchase plan and the Company was authorized to repurchase up to $5 million (at then-current market value) of the Company&#x2019;s common stock in open-market transactions at prevailing market prices upon periodic instructions from the Board
              or an authorized sub-committee of the Board until September 30, 2026. As of March 31, 2025, $5.0 million remained available for
              repurchase under this new program.&lt;/span&gt;&lt;/div&gt;
</tlfa:ShareRepurchaseProgramAndShareRepurchasesTextBlock>
    <srt:StockRepurchaseProgramAuthorizedAmount1
      contextRef="c20220808_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember"
      decimals="-5"
      id="Fact_e99e2d6bcf924568bb42eb9e4f9e45cb"
      unitRef="U002">5000000</srt:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:TreasuryStockCommonValue
      contextRef="c20240831_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember"
      decimals="0"
      id="Fact_cbe92eb477ac4b4c930879b3c8b78c2d"
      unitRef="U002">10000</us-gaap:TreasuryStockCommonValue>
    <srt:StockRepurchaseProgramAuthorizedAmount1
      contextRef="c20240917_RangeAxis_MaximumMember_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember"
      decimals="-6"
      id="Fact_6c58bd11595a425f991536cbe405304d"
      unitRef="U002">5000000</srt:StockRepurchaseProgramAuthorizedAmount1>
    <us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
      contextRef="c20250331"
      decimals="-5"
      id="Fact_5f9821b3829146378e5de055d72f676b"
      unitRef="U002">5000000</us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1>
    <tlfa:SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock
      contextRef="c20250101to20250331"
      id="Text_f107657ef997426c9fe667698cd3442b">
&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt; font-weight: bold;"&gt;8. SALES OF CORPORATE HEADQUARTERS &amp;amp; NEW CEO EMPLOYMENT&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Company concluded the sale of our corporate headquarters, and the net proceeds of the sale is recorded on the face of our consolidated statements of operations
          and comprehensive income as Gain on disposal of Headquarter.&lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;span style="font-size: 10pt; font-family: 'Times New Roman';"&gt;On January 22, 2025, the Company finalized the sale of its corporate headquarters and distribution
            facilities in Fort Worth, Texas for net proceeds of $24.9 million after deduction of commission and relevant closing fees. The total
            net book value disposed was $7.2 million resulting in a gain of $17.7 million as the result of the sale and this is included in &#x2018;Other income on the face of our consolidated statements of operations and comprehensive income. The Company
            has elected to include all one-time move expenses in &#x2018;Other income&#x2019; as management deems these are not part of our normal operations.&lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td colspan="4" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-weight: bold;"&gt;Sales and Disposal of Headquarter&lt;span style="font-style: italic;"&gt; (in thousands)&lt;/span&gt;&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left;"&gt;Net Proceeds&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div&gt;24,897&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left;"&gt;NBV of Headquarter Assets&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div&gt;7,221&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-weight: bold;"&gt;Net Gain&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="font-weight: bold;"&gt;17,676&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
        &lt;/div&gt;

&lt;div style="text-align: justify;"&gt;&lt;span style="font-family: 'Times New Roman'; font-size: 10pt; background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-style: normal; font-variant: normal; text-transform: none;"&gt;On
              January 28, 2025, the Company also signed a 10-year lease for new corporate headquarters and distribution facilities in Benbrook
              that will be effective on September 1, 2025, Texas and the Company has the ability to renew the lease for an additional 10 years
              at market rate. We also signed a short term lease through lease through September 1, 2025 for our current facility that was evaluated as a sale leaseback. Due to the short term nature of the lease it was not recorded under ASC 842 in
              accordance with our policy of not recording short term leases. &lt;/span&gt;&lt;/div&gt;

&lt;div&gt;&lt;span style="background-color: rgb(255, 255, 255); font-weight: normal; color: rgb(0, 0, 0); font-family: 'Times New Roman'; font-size: 10pt; font-style: normal; font-variant: normal; text-transform: none;"&gt; &lt;/span&gt;&lt;/div&gt;

&lt;div style="font-family: 'Times New Roman'; font-size: 10pt;"&gt;&lt;br/&gt;
          &lt;/div&gt;

&lt;div style="text-align: justify; font-family: 'Times New Roman'; font-size: 10pt;"&gt;The Company hired Johan Hedberg as its new Chief Executive Officer as of January 6, 2025.&#160; Prior to the hiring of Mr. Hedberg, Janet Carr resigned as Chief
            Executive Officer, effective January 3, 2025; she remained employed by the Company to assist with transition until March 31, 2025. &lt;br/&gt;
          &lt;/div&gt;
</tlfa:SalesOfCorporateHeadquartersAndNewCEOEmploymentTextBlock>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="c20250101to20250331"
      decimals="-5"
      id="Fact_0e942414017e4c5a9eacdd0ee732112c"
      unitRef="U002">24900000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <tlfa:HeadquarterAssetsNetBookValue
      contextRef="c20250331"
      decimals="-5"
      id="Fact_474a61e2bec84cc0a2c93bdb7e11ddfb"
      unitRef="U002">7200000</tlfa:HeadquarterAssetsNetBookValue>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="c20250101to20250331"
      decimals="-5"
      id="Fact_0b3338422be9464894cbd4e19044cac9"
      unitRef="U002">17700000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock
      contextRef="c20250101to20250331"
      id="Text_e186bac6c81a47b7920dc344595938f8">
&lt;table cellpadding="0" cellspacing="0" class="cfttable" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; color: rgb(0, 0, 0); width: 100%; border-spacing: 0;"&gt;


  &lt;tr&gt;

    &lt;td colspan="4" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; border-bottom: #000000 solid 2px;" valign="bottom"&gt;
                &lt;div style="text-align: center; font-weight: bold;"&gt;Sales and Disposal of Headquarter&lt;span style="font-style: italic;"&gt; (in thousands)&lt;/span&gt;&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="2" style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left;"&gt;Net Proceeds&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;
                &lt;div&gt;24,897&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: #CCEEFF; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left;"&gt;NBV of Headquarter Assets&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; background-color: rgb(204, 238, 255); border-bottom: 2px solid rgb(0, 0, 0); white-space: nowrap;" valign="bottom"&gt;
                &lt;div&gt;7,221&lt;br/&gt;
                &lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; background-color: rgb(204, 238, 255); padding-bottom: 2px; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;

  &lt;tr&gt;

    &lt;td style="vertical-align: bottom; font-family: 'Times New Roman'; font-size: 10pt; width: 88%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="text-align: left; font-weight: bold;"&gt;Net Gain&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: right; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="font-weight: bold;"&gt;$&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; vertical-align: bottom; text-align: right; width: 9%; border-bottom: 4px double rgb(0, 0, 0); background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;
                &lt;div style="font-weight: bold;"&gt;17,676&lt;/div&gt;
              &lt;/td&gt;

    &lt;td colspan="1" style="font-family: 'Times New Roman'; font-size: 10pt; text-align: left; vertical-align: bottom; width: 1%; padding-bottom: 4px; background-color: rgb(204, 238, 255); white-space: nowrap;" valign="bottom"&gt;&#160;&lt;/td&gt;

  &lt;/tr&gt;


&lt;/table&gt;
</us-gaap:ScheduleOfDisposalGroupsIncludingDiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresTextBlock>
    <us-gaap:ProceedsFromSaleOfProductiveAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_c2ca3c159fba4409913178a339735ebe"
      unitRef="U002">24897000</us-gaap:ProceedsFromSaleOfProductiveAssets>
    <tlfa:HeadquarterAssetsNetBookValue
      contextRef="c20250331"
      decimals="-3"
      id="Fact_3d220075f02f4052bc02c910b22937d3"
      unitRef="U002">7221000</tlfa:HeadquarterAssetsNetBookValue>
    <us-gaap:GainLossOnDispositionOfAssets
      contextRef="c20250101to20250331"
      decimals="-3"
      id="Fact_3d0ec9730c504cfd827381c8c66db9ed"
      unitRef="U002">17676000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="c20250331"
      id="Fact_c201ec18773b4a64a4bc314a67f60090">P10Y</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:LesseeOperatingLeaseRenewalTerm
      contextRef="c20250331"
      id="Fact_ee2a3e2db62a4800b9ba0fc2f90db508">P10Y</us-gaap:LesseeOperatingLeaseRenewalTerm>
    <link:footnoteLink
      xlink:role="http://www.xbrl.org/2003/role/link"
      xlink:type="extended">
        <link:loc
          xlink:href="#Fact_0e2f76ca8f8a4dd3855c17ba90c36408"
          xlink:label="Fact_0e2f76ca8f8a4dd3855c17ba90c36408"
          xlink:type="locator"/>
        <link:footnote id="Foot_014120d6f7a840db89bc9773e88e6d8a" xlink:label="Foot_014120d6f7a840db89bc9773e88e6d8a" xlink:role="http://www.xbrl.org/2003/role/footnote" xlink:type="resource" xml:lang="en-US">Grant of 900,000 shares pending approval of the Company&#x2019;s stockholders at the 2025 annual meeting.</link:footnote>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_0e2f76ca8f8a4dd3855c17ba90c36408"
          xlink:to="Foot_014120d6f7a840db89bc9773e88e6d8a"
          xlink:type="arc"/>
        <link:loc
          xlink:href="#Fact_d03490cb70344061a8a0d00416a40a4b"
          xlink:label="Fact_d03490cb70344061a8a0d00416a40a4b"
          xlink:type="locator"/>
        <link:footnoteArc
          xlink:arcrole="http://www.xbrl.org/2003/arcrole/fact-footnote"
          xlink:from="Fact_d03490cb70344061a8a0d00416a40a4b"
          xlink:to="Foot_014120d6f7a840db89bc9773e88e6d8a"
          xlink:type="arc"/>
    </link:footnoteLink>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
