0001140361-24-014799.txt : 20240322 0001140361-24-014799.hdr.sgml : 20240322 20240322162130 ACCESSION NUMBER: 0001140361-24-014799 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 77 CONFORMED PERIOD OF REPORT: 20231231 FILED AS OF DATE: 20240322 DATE AS OF CHANGE: 20240322 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 IRS NUMBER: 752543540 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-12368 FILM NUMBER: 24775539 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 10-K 1 ef20015300_10k.htm 10-K

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549

FORM 10-K
(Mark One)

ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the fiscal year ended December 31, 2023
OR

TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the transition period ________ to________

Commission File Number 1-12368
graphic
TANDY LEATHER FACTORY, INC.
Delaware
 
75-2543540
(State or other jurisdiction of incorporation or organization)
 
(I.R.S. Employer Identification No.)

1900 Southeast Loop 820
Fort Worth, Texas  76140
 
 
76140
(Address of Principal Executive Offices)
 
(Zip Code)

817-872-3200
(Registrant’s telephone number, including area code)
 
Securities registered pursuant to Section 12(b) of the Act:

Title of each class
Trading Symbol
Name of each exchange on which registered
Common Stock, par value $0.0024
TLF
The Nasdaq Capital Market

Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act.  Yes ☐  No

Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.  Yes ☐  No

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.  Yes No ☐

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 during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). Yes ☒ No ☐

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, an emerging growth company.  See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.
Large accelerated filer ☐ Accelerated filer ☐ Non-accelerated filer ☒ Smaller reporting company Emerging growth company

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.

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Act).  Yes No ☒

Indicate by check mark whether the registrant has filed a report on and attestation to its management’s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report.  

The aggregate market value of the common stock held by non-affiliates of the registrant was approximately $18,217,065 at June 30, 2023 (based on the price at which the common stock was last traded on the last business day of its most recently completed second fiscal quarter).

Indicate the number of shares outstanding of each of the registrant’s classes of common stock, as of the latest practicable date.  As of March 22, 2024, there were 8,399,245 shares of the registrant’s common stock outstanding.

DOCUMENTS INCORPORATED BY REFERENCE

NONE


TABLE OF CONTENTS
 
3
3
8
14
14
15
17
17
18
18
18
19
27
53
53
54
55
55
55
55
55
55
56
57
59
60

PART I
ITEM 1.
BUSINESS
 
The following discussion, as well as other portions of this Form 10-K, contains forward-looking statements that reflect our plans, estimates and beliefs.  Any such forward-looking statements (including, but not limited to, statements to the effect that Tandy Leather Factory, Inc. (“TLF”) or its management “anticipates,” “plans,” “estimates,” “expects,” “believes,” “intends,” 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.  These forward-looking statements are made based upon management’s current plans, expectations, estimates, assumptions and beliefs concerning future events impacting us and should be read carefully because they involve risks and uncertainties.  We assume no obligation to update or otherwise revise these forward-looking statements, except as required by law.  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.  Our actual results could materially differ from those discussed in such forward-looking statements.  Factors that could cause or contribute to such differences include, but are not limited to, those discussed below and elsewhere in this Form 10-K and particularly in “Item 1A. Risk Factors” and “Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations.”  Unless the context otherwise indicates, references in this Form 10-K to “TLF,” “we,” “our,” “us,” the “Company,” “Tandy,” or “Tandy Leather” mean Tandy Leather Factory, Inc., together with its subsidiaries.
 
General
 
Tandy Leather Factory, Inc. (“TLF,” “we,” “our,” “us,” the” Company,” “Tandy,” or “Tandy Leather” mean Tandy Leather Factory, Inc., together with its subsidiaries) is one of the world’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.
 
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 plus 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.
 
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.  We produce leather lace, cut leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.  We also offer production services to our business customers such as cutting (“clicking”) and splitting and some assembly.  We maintain our principal offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.
 
The Company’s common shares currently trade on the Nasdaq Capital Market Group under the symbol “TLF.”
 
Retail Fleet
 
The Company currently operates a total of 102 retail stores. There are 91 stores in the United States (“U.S.”), 10 stores in Canada and one store in Spain.
 
All Tandy locations, other than our corporate headquarters (which includes our flagship store, corporate offices, distribution center, and production facility) are leased.
 
Business Strategy
 
Tandy Leather has been introducing people to leatherworking for over 100 years.  Our stores have been, and continue to be, our competitive advantage: where our consumers learn the craft in classes, open table, 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.  Our websites provide inspiration, detailed product descriptions and specifications, educational information and videos, and a convenient place to also purchase product – especially for those who are far from our retail stores, including a growing international customer base.  For many of our retail and web customers, leatherworking evolves from a passion to a trade.  Our commercial division is tailored to the needs of those customers who build businesses around leather.  With dedicated direct account representatives, a direct-from-our-warehouse shipping model, volume-based competitive pricing, customized product development, assembly and pre-assembly services, we are building long-term, strategic relationships with our largest customers.
 
With COVID-19 and restatement related impacts behind us, and with initiatives to improve our brand proposition and to build the foundation for a modern and efficient retail business taking hold, we believe we have made significant progress toward building a durable, profitable business model.  Our cost of sales and operating expenses have stabilized, and we believe we have the structure, and the operating nimbleness, that can deliver operating profit and free cash flow even in the face of economic headwinds.  Going forward, our strategy is to continue to manage our cost base and use of cash and focus on strengthening our sales by leveraging our competitive advantage of our retail stores.  Improving our employee product knowledge, customer service level and community engagement as well as expanding workshop space in stores with machines are the highest priorities.  We need to continue to give customers good reasons to visit stores, and an excellent return on their time investment when they do.
 
COVID-19 and Economic Conditions
 
At the time of filing this Form 10-K, the American and world economies have largely recovered from effects of the COVID-19 pandemic but continue to be affected by a combination of factors arising from the continuing war in Ukraine, the more recent and worsening crisis in the Israel and the Middle East, and continued tensions between the U.S. and China. While inflation appears to be cooling, food, housing and transportation prices remain significantly higher than prior to the pandemic – that is not likely to change in the near term and could be further impacted by the global environment.  The weakening labor market may relieve pressure on our ability to hire qualified employees, but recent wage gains are not likely to be reversed.  Higher unemployment together with continued high interest rates may further dampen consumer demand and affect the Company’s future financial performance.
 
Customers
 
Our customers fall into two broad categories: those who shop in retail stores and on our website (“Retail Customers”) and those whom we serve through our commercial division (“Commercial Customers”).  Retail Customers range from hobbyists to institutions (schools, camps, and other groups) to small businesses.  Affinity groups like Military and First Responders and smaller and larger businesses who purchase in our retail stores receive special pricing or general discounts.  To be served through our commercial division, customers generally need to spend more than $20,000.
 
Merchandise
 
We carry a wide assortment of products organized into a number of categories including leather, hand tools, hardware, kits, liquids, machines, and other supplies.  We operate a production facility in Fort Worth, Texas, where we produce kits, thread lace, belt strips and straps, and Craftaid® tooling templates, and provide some custom production services  for commercial and business customers.  The factory produces approximately 10% of our products.  We distribute product under the Tandy LeatherTM, Eco-FloTM, CraftoolTM, CraftoolProTM and Dr. Jackson’sTM brands, along with our premium TandyPro® line of products.  We develop and invest in new products through the ideas and referrals of customers and store personnel as well as the analysis of trends in the market and sales performance at retail.  In addition, we have been focused on broadening our assortment through strategic partnerships with key brands to drive category growth and better meet the needs of our customers.
 
Operations
 
Information regarding net sales, gross profit, operating income, and total assets is included within Item 7, Management's Discussion and Analysis of Financial Condition and Results of Operations, and within Item 8, Financial Statements and Supplementary Data.
 
Our stores offer a broad selection of products combined with leathercraft expertise in a one-stop shop.  Not only can customers purchase leather, related accessories and supplies necessary to complete their projects from a single source, but many of our store associates are also leathercrafters themselves and can provide suggestions and advice on our customers’ projects.  Customers value the expertise and high level of customer service from our store associates, the convenience of taking their purchases immediately, as well as the ability to touch, feel and choose their individual pieces of leather, an organic product in which each piece is unique.  We also offer open workbenches where customers can work on projects together with the leathercrafting community, and test new tools and techniques.
 
Most of our stores range in size from 1,300 square feet to 9,000 square feet, with the average at approximately 3,500 square feet. Our Fort Worth flagship store is approximately 22,000 square feet.  Stores are located in light industrial warehouse spaces or older strip shopping centers in proximity to major freeways or well-known crossroads.  We believe that many of our customers view our stores as a destination: customers interested in leathercrafting seek us out, reducing the value of paying high rents for high foot-traffic locations.
 
Historically, we generate slightly more sales in the fourth quarter of each year due to the holiday shopping season (approximately 28-30% of annual sales), while the other three quarters average approximately 22-24% of annual sales each quarter.
 
Distribution
 
Our stores receive the majority of their inventory from our central distribution center located in Fort Worth, Texas, in weekly or, increasingly, bi-monthly shipments, using third-party transportation providers.  Occasionally, merchandise is shipped to stores directly from the vendor.  We now fulfill all of our U.S. and many of our international web orders from our Fort Worth distribution center.  Canada web orders are fulfilled out of our 10 Canada stores, and European web orders are fulfilled out of our Spain store.  We have a global customer service team that handles web order inquiries and phone orders.  Our goal is to optimize the tradeoff between the sales and market share we realize from having a broad product line against the safety stock required to support those items.  We generally maintain higher inventories of imported or long-lead-time items to ensure a continuous supply. Increased product assortment and some supply chain disruptions over the past several years have put upward pressure on inventory, offset by better sell-throughs, test-and-learn buying, and strategic partnerships with vendors.   We have been executing a number of strategic initiatives to test smaller quantities of new items online, buying into them only when we are certain of their success, to tailor product assortments to the needs of local customers in each store, and to ship directly from vendors to customers.  We carry about 6,500 stock-keeping units (SKUs) in our current product line and continue to refine both the line, the lead times and safety stock levels required to meet customer demand, online vs. in-store assortment, and overall total inventory levels needed to grow sales and market share.

Competition
 
Our competitors include smaller, independently-owned brick-and-mortar retailers, internet-based retailers including those selling on platforms like Amazon and eBay, national craft chains like Michaels Stores, Inc. and Hobby Lobby Stores, Inc., some wholesale-focused distributors, and two mid-sized competitors – Weaver Leather and Springfield Leather – who have one store and an online business.  Virtually all of these competitors carry a more limited line of leathercraft products compared to Tandy.  We are competitive on convenience, price, availability of merchandise, customer service, depth of our product line, and delivery time.  Tandy Leather is the only multi-store chain specializing in leathercraft, which we believe provides a competitive advantage over internet-based retailers,  the large general craft retailers, and the mid-sized competitors.  We also believe that our large size relative to most competitors gives us an advantage in sourcing as well as deep product and leathercrafting expertise among our employees.
 
Suppliers
 
We purchase merchandise and raw materials from nearly 150 suppliers from the United States and approximately 20 foreign countries.  In general, our 10 largest suppliers account for approximately 55% of our inventory purchases, and we had one supplier in 2023 who represented more than 10% of our purchases.
 
Because leather is sold internationally, market conditions abroad are likely to affect the price of leather in the U.S.  Aside from increasing purchases when we anticipate price increases (or possibly delaying purchases if we foresee price declines), we do not attempt to hedge our inventory costs.
 
Our supply chain and vendor relationships remain strong.  We are focused on continuing to align our product and sourcing strategies to elevate the overall quality, consistency, and agility to meet the diverse needs of our existing consumers and attract new ones to the brand.  The most acute supply chain shocks resulting from the pandemic have mostly moderated, with increases in lead times, product costs and ocean freight costs flattening and even declining in some areas.  However, trucking costs and reliability remain volatile and tight labor markets and rising wages continue to pressure costs across all areas.
 
Compliance with Environmental Laws
 
Our compliance with federal, state and local environmental protection laws has not had, and is not expected to have, a material effect on our capital expenditures, earnings, or competitive position.
 
Employees
 
As of December 31, 2023, we employed 515 people, 389 of whom were employed on a full-time basis.  We are not a party to any collective bargaining agreements.  Overall, we believe that relations with employees are good.
 
Intellectual Property
 
The Company owns all the material trademark rights used in connection with the production, marketing, distribution and sale of all Tandy-branded products.  In addition, we license a limited number of our trademarks and copyrights used in connection with the production, marketing and distribution of certain categories of goods and limited edition co-branded projects.  Major trademarks include federal trade name registrations for “Tandy Leather Factory,” “Tandy Leather Company,” and “Tandy.”  The Company is not dependent on any one particular trademark or design patent, although it believes that the “Tandy” and “Tandy Leather” names are important for its business.  In addition, Tandy owns several patents for specific belt buckles and leather-working equipment.  Tandy polices its trademarks and trade dress and where appropriate pursues infringers.  The Company expects that its material trademarks will remain in full force and effect for as long as we continue to use and renew them.
 
Foreign Sales
 
Information regarding our sales from the United States and abroad and our long-lived assets is found in Note 2, Significant Accounting Policies: Revenue Recognition and Note 3, Balance Sheet Components, of the Notes to the Consolidated Financial Statements.  For a description of some of the risks related to our foreign operations, see Item 1A, Risk Factors.
 
Available Information
 
We file reports with the SEC. These reports include our Annual Reports on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K and any amendments to these filings.  These reports are available on the Securities and Exchange Commission’s website at www.sec.gov.
 
Our corporate website is located at www.tandyleather.com.  We make copies of our Annual Reports on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K, proxy statements and any amendments thereto filed with or furnished to the SEC available to investors on or through our website free of charge as soon as reasonably practicable after we electronically file them with or furnish them to the SEC.  Our SEC filings can be found on the Investor Relations page of our website through the “SEC Filings” link.  In addition, certain other corporate governance documents are available on our website through the “Corporate Governance” link.  No information contained on any of our websites is intended to be included as part of, or incorporated by reference into, this Form 10-K.
 
Information about our Executive Officers
 
The following table sets forth information concerning our executive officers as of December 31, 2023:
 
Name
 
Age
 
Executive
Since
 
Position
Janet Carr
 
62
 
2018
 
Chief Executive Officer

Janet Carr has served as our Chief Executive Officer and as a member of our Board of Directors since October 2018.  Prior to her current role, Ms. Carr served as the Senior Vice-President of Global Business Development for Caleres Inc. (formerly Brown Shoe Company Inc.) from 2016 to 2017.  While there, she was responsible for international wholesale and retail for all of their brands.  Prior to Caleres, Ms. Carr was the President of the Handbag Division of Nine West Group Inc. from 2013 to 2014, where she was responsible for all aspects of design, development and sales in both wholesale and retail.  Ms. Carr has deep experience in strategy and consumer insights in various roles at a number of prominent retailers, including Tapestry, Inc. (formerly Coach, Inc.), Gap Inc. and Safeway.
 
ITEM 1A.
RISK FACTORS
 
Risks Related to our Business and Business Strategy
 
The successful execution of our multi-year transformation and operational efficiency initiatives is key to the long-term growth of our business.
The Company continues to implement a large number of initiatives to transform the Company’s business, improve sales long term and improve operational efficiency.  These include the realignment of the Company’s retail division management structure, the closing of underperforming stores, the formation of a new division focused on serving commercial customers, pricing and marketing initiatives, systems improvements, and other changes.  The Company believes that long-term growth will be realized through these transformational efforts over time, however there is no assurance that such efforts will be successful.  Actual costs incurred and the timeline of these initiatives may differ from our expectations.  If these initiatives are unsuccessful, our business, financial condition and results of operation could be materially adversely affected.

Our business is subject to the risks inherent in global sourcing activities.
As a Company engaged in sourcing on a global scale, we are subject to the risks inherent in such activities, including, but not limited to:

unavailability of, or significant fluctuations in the cost of, raw materials;

disruptions or delays in shipments;

loss or impairment of key assembly or distribution sites, which also could result in a former manufacturer beginning to produce similar products that compete with ours;

inability to engage new independent manufacturers that meet the Company’s cost-effective sourcing model;

product quality issues;

compliance by us and our independent manufacturers and suppliers with labor laws and other foreign governmental regulations;

imposition of additional duties, taxes, and other charges on imports or exports;

embargoes against products originating in countries from which we source;

increases in the cost of labor, fuel (including volatility in the price of oil), travel and transportation;

compliance by our independent manufacturers and suppliers with our Code of Business Conduct and Ethics and our Animal Welfare Policy;

political unrest;

unforeseen public health crises, such as pandemic (e.g., the COVID-19 pandemic) and epidemic diseases;

natural disasters or other extreme weather events, whether as a result of climate change or otherwise; and

acts of war or terrorism and other external factors over which we have no control.

Increases in the price of leather and other items we sell or a reduction in availability of those products could increase our cost of goods and decrease our profitability.
The prices we pay our suppliers for our products are dependent in part on the market price for leather, metals, and other products.  The cost of these items may fluctuate substantially, depending on a variety of factors, including demand, supply conditions, transportation and fuel costs, government regulation, economic climates, war or other political considerations, and other unpredictable factors.  Leather prices worldwide have been relatively stable for the past several years although the outlook for future prices is uncertain.  Increases in these costs, together with other factors, would make it difficult for us to sustain the gross margin level we have achieved in recent years and result in a decrease in our profitability unless we are able to pass higher prices on to our customers or reduce costs in other areas.  Changes in consumers’ product preferences or lack of acceptance of our products whose costs have increased may prohibit us from passing those increases on to customers, which could cause our gross margin to decline.  If our product costs increase and our sale prices do not, our future operating results could be adversely affected unless we are able to offset such gross margin declines with comparable reductions in operating costs.  Accordingly, such increases in costs could adversely affect our business and our results of operations.

Further, involvement by the United States in war and other military operations abroad could disrupt international trade and affect our inventory sources.  Finally, livestock diseases, such as mad cow, could reduce the availability of hides and leathers or increase their cost.  The occurrence of any of these events could adversely affect our business and our results of operations.

We are subject to risks associated with leasing retail space under long-term and non-cancelable leases.  We may be unable to renew leases on acceptable terms.  If we close a leased retail space, we might remain obligated under the applicable lease.
We lease the majority of our retail store locations under long-term, non-cancelable leases, which have initial or renewed terms typically ranging from three years to ten years and may include lease renewal options.  We believe that most of the lease agreements we will enter into in the future will likely be long-term and non-cancelable.  Generally, our leases are “net” leases, which require us to pay our proportionate share of the cost of insurance, taxes, maintenance, and utilities.  We generally cannot cancel these leases at our option.  If we determine that it is no longer economical to operate a retail store subject to a lease and decide to close it, as we have done in the past and will do in the future, we would generally remain obligated under the applicable lease for, among other things, payment of the base rent, common charges, and other net payments for the balance of the lease term.  In some instances, we may be unable to close an underperforming retail store without a significant financial penalty due to continuous operation clauses in our lease agreements.  In addition, as each of our leases expire, we may be unable to negotiate renewals, either on commercially acceptable terms or at all, which could cause us to close retail stores in desirable locations.  Our inability to secure desirable retail space or favorable lease terms could impact our ability to grow.  Likewise, our obligation to continue making lease payments in respect of leases for closed retail spaces could have a material adverse effect on our business, financial condition and results of operations.

We may be unable to sustain our financial performance or our past growth, which could have a material adverse effect on our future operating results.
In 2020, we experienced declines in sales and operating income primarily resulting from the COVID-19 pandemic.  In 2023, we also experienced declines primarily resulting the longer-term economic effects of COVID-19 (higher food, housing and transportation costs, higher interest rates, lower government subsidies) and the added economic impact of the war in Ukraine and now the Middle East.  Many other specialty retailers have experienced declining sales and losses due to the overall challenging retail environment.  Our sales and profits may continue to be negatively affected in the future.  We anticipate that our financial performance will depend on a number of factors, including consumer preferences, the strength and protection of our brand, the introduction of new products, and the success of our business strategy.

Competition, including internet-based competition, could negatively impact our business.
The retail industry is competitive, which could result in the reduction of our prices and loss of our market share. We must remain competitive in the areas of quality, price, breadth of selection, customer service, and convenience.  We compete with smaller retailers focused on leather and leather crafting, some of whom have been able to offer competitive products at lower prices than ours.  We also compete with larger specialty retailers (e.g., Michaels Stores, Inc. and Hobby Lobby Stores, Inc.) that dedicate a small portion of their selling space to products that compete with ours but are larger and have greater financial resources than we do.  The Company also faces competition from internet-based retailers, in addition to traditional store-based retailers.  This could result in increased price competition since our customers can more readily search and compare products from internet-based retailers who do not need to support a physical store fleet and may be able to undercut our prices for products.  The growth of internet retailers has also significantly reduced traffic to many shopping centers and physical stores, which, if not countered by an increase in our own online retailing, could have a material adverse effect on our in-store or overall sales.

Declines in foot traffic in our retail store locations could negatively impact our sales and profits.
The success of our retail stores is affected by (1) the location of the store within its community or shopping center; (2) surrounding tenants or vacancies; (3) increased competition in areas where shopping centers are located; (4) the amount spent on advertising and promotion to attract consumers to the stores; and (5) a shift towards online shopping resulting in a decrease in retail store traffic.  Many of our stores are located in light industrial areas, where foot traffic tends to be lower than in traditional retail shopping areas.  Furthermore, our initiatives to service our larger customers through a dedicated Commercial Program rather than primarily through local stores may also lead to a decline in the traffic to our store locations.  Declines in consumer traffic could have a negative impact on our net sales and could materially adversely affect our financial condition and results of operations.  Furthermore, declines in traffic could result in store impairment charges if expected future cash flows of the related asset group do not exceed the carrying value.

Our business could be harmed if we are unable to maintain our brand image.
Tandy Leather is one of the most recognized brand names in our industry.  Our success to date has been due in large part to the strength of that brand.  If we are unable to provide quality products and exceptional customer service to our customers, including education, which Tandy Leather has traditionally been known for, our brand name may be impaired which could adversely affect our operating results.

Changes in customer demand could materially adversely affect our sales, results of operations and cash flow.
Our success depends on our ability to anticipate and respond in a timely manner to changing customer demands and preferences for leather and leathercraft-related items.  If we misjudge the market, we might significantly overstock unpopular products and be forced to take significant inventory markdowns, or experience shortages of key items, either of which could have a material adverse impact on our operating results and cash flow.  In addition, adverse weather conditions, economic or political instability and consumer confidence volatility could have material adverse impacts on our sales and operating results.

Our success depends, in part, on attracting, developing and retaining qualified employees, including key personnel.
The ability to successfully execute our goals is heavily dependent on attracting, developing and retaining qualified employees, including our senior management team.  Competition in our industry to attract and retain these employees is intense and is influenced by our ability to offer competitive compensation and benefits, employee morale, our reputation, recruitment by other employers, perceived internal opportunities, non-competition and non-solicitation agreements and macro unemployment rates.

We depend on the guidance of our senior management team and other key employees who have significant experience and expertise in our industry and our operations.  The unexpected loss of one or more of our key personnel or any negative public perception with respect to these individuals could have a material adverse effect on our business, results of operations and financial condition.  We do not maintain key-person or similar life insurance policies on any of senior management team or other key personnel.

Disruptions in the operation of our Fort Worth distribution center or assembly facility due to disease, including COVID-19, natural disaster, fire, or other crises, could have an adverse effect on our ability to supply our retail stores, fulfill web orders and/or manufacture product, resulting in possible decreases in sales and margin.

We are dependent on a limited number of distribution and sourcing centers, primarily the center located at our Fort Worth, Texas headquarters.  Our ability to meet the needs of our customers and our retail stores and e-commerce sites depends on the proper operation of these centers.  If any of these centers were to shut down or otherwise become inoperable or inaccessible for any reason, we could suffer a substantial loss of inventory and/or disruptions of deliveries to our retail and wholesale customers.  While we have business continuity and contingency plans for our sourcing and distribution center sites, significant disruption of assembly or distribution for any of the above reasons could interrupt product supply, result in a substantial loss of inventory, increase our costs, disrupt deliveries to our customers and our retail stores, and, if not remedied in a timely manner, could have a material adverse impact on our business.
 
Risks Related to Cash Flow and Capitalization
 
If our cash from operations falls short and we are unable to raise additional working capital, we might be unable to fully fund our operations or to otherwise execute our business plan.
 
Historically, the Company has funded its business primarily with cash from operations and has utilized only small lines of working capital for seasonal expenditures.    In 2023, we obtained a line of credit facility through JP Morgan Chase Bank to provide working capital as needed; as of the date of this report, we have not borrowed any amounts under this facility.  However, should (1) our costs and expenses prove to be greater than we currently anticipate, or (2) seasonal fluctuations in sales or inventory purchases result in needing additional capital, and (3) we are unable to borrow sufficient short- or long-term capital, the depletion of our working capital would be accelerated and could leave us unable to make required payments.  We may also seek capital through the private issuance of debt or equity securities. We cannot guarantee that we will be able to secure all of the additional cash or working capital we might require to continue our operations.
 
Risks Related to Technology, Data Security and Privacy
 
Failure to protect the integrity and security of personal information of our customers and employees could result in substantial costs, expose us to litigation and damage our reputation.
 
We receive and maintain certain personal, financial, and other information about our customers, employees, and vendors.  In addition, our vendors receive and maintain certain personal, financial, and other information about our employees and customers.  The use and transmission of this information is regulated by evolving and increasingly demanding laws and regulations across various jurisdictions.  If our security and information systems are compromised as a result of data corruption or loss, cyber-attack or a network security incident or if our employees or vendors fail to comply with these laws and regulations and this information is obtained by unauthorized persons or used inappropriately, it could result in liabilities and penalties and could damage our reputation, cause us to incur substantial costs and result in a loss of customer confidence, which could materially affect our results of operations and financial condition.  Additionally, we could be subject to litigation and government enforcement actions because of any such failure.
 
Further, data privacy is subject to frequently changing rules and regulations, which sometimes conflict among the various jurisdictions and countries where we operate.  For example, the General Data Protection Regulation (“GDPR”), which was adopted by the European Union effective May 2018, requires companies to meet new requirements regarding the handling of personal data.  In addition, the State of California enacted the California Consumer Privacy Act (the “CCPA”), which became effective January 2020 and requires companies that process information on California residents to, among other things, provide new disclosures and options to consumers about data collection, use and sharing practices.
 
Moreover, each of the GDPR and the CCPA confer a private right-of-action on certain individuals and associations.  Our failure to adhere to or successfully implement appropriate processes to adhere to the requirements of GDPR, CCPA and other evolving laws and regulations in this area could result in financial penalties, legal liability and could damage our reputation, which could have a material adverse effect on our business, financial condition and results of operations.
 
A cybersecurity incident and other technology disruptions could negatively affect our business and our relationships with customers.

We use technology in substantially all aspects of our business operations.  The widespread use of technology, including mobile devices, cloud computing, and the internet, gives rise to cybersecurity risks, including security breaches, espionage, system disruption, theft and inadvertent release of information.  Our business involves the storage and transmission of numerous classes of sensitive and/or confidential information and intellectual property, including information relating to customers and suppliers, private information about employees, and financial and strategic information about us and our business partners.  The Company has implemented measures to prevent cybersecurity breaches and incidents, as described in Item 1C below.  However, we cannot guarantee that these preventative measures and incident response efforts will be entirely effective.  If we fail to effectively assess and identify cybersecurity risks associated with the use of technology in our business operations, we may become increasingly vulnerable to such risks.  The theft, destruction, loss, misappropriation, or release of sensitive and/or confidential information or intellectual property, or interference with our information technology systems or the technology systems of third parties on which we rely, could result in business disruption, negative publicity, brand damage, violation of privacy laws, loss of customers, potential liability and competitive disadvantage.
 
Unreliable or inefficient information technology or the failure to successfully implement or invest in technology initiatives in the future could adversely impact operating results.
 
We rely heavily on information technology systems in the conduct of our business, some of which are managed, and/or hosted by third parties, including, for example, point-of-sale processing in our stores, management of our supply chain, and various other processes and procedures.  These systems are subject to damage, interruption or failure due to theft, fire, power outages, telecommunications failure, computer viruses, security breaches, malicious cyber-attacks or other catastrophic events.  Certain technology systems may also be unreliable or inefficient, and technology vendors may limit or terminate product support and maintenance, which could impact the reliability of critical systems operations.  If our information technology systems are damaged or fail to function properly, we may incur substantial costs to repair or replace them and may experience loss of critical data and interruptions or delays in our ability to manage inventories or process transactions, which could result in lost sales, customer or employee dissatisfaction, or negative publicity that could negatively impact our reputation, results of operations and financial condition.
 
Moreover, our failure to adequately invest in new technology or adapt to technological developments and industry trends, particularly with respect to digital commerce capabilities, could result in a loss of customers and related market share.  If our digital commerce platforms do not meet customers’ expectations in terms of security, speed, attractiveness or ease of use, customers may be less inclined to return to such digital commerce platforms, which could negatively impact our business.
 
Risks Related to the Macroeconomic Environment
 
Our business may be negatively impacted by general economic conditions in the United States and abroad.
 
Our performance is subject to global economic conditions and their impact on levels of consumer spending that affect not only the ultimate consumer, but also small businesses and other retailers.  Specialty retail, and retail in general, is heavily influenced by general economic cycles.  Specifically, at the time of filing this Form 10-K, the American and world economies have been acutely affected by a combination of factors resulting from both the COVID-19 pandemic and the war resulting from the invasion of Ukraine by Russian military forces.  The current impacts of these events include (but are not limited to) levels of inflation that are the highest in the U.S. in more than 40 years, fuel prices at or near record highs, an extremely tight labor market with rising wages and competition to attract qualified workers, rising real estate prices and increases in interest rates.
 
Purchases of non-essential, discretionary products tend to decline in periods (such as the current one) of recession or uncertainty regarding future economic prospects, as disposable income declines.  During these periods of economic uncertainty, we may not be able to maintain or increase our sales to existing customers, make sales to new customers, open and operate new stores, maintain sales levels at our existing stores, maintain or increase our international operations on a profitable basis, maintain our earnings from operations as a percentage of net sales, or generate sufficient cash flows to fund our operational and liquidity needs.  As a result, our operating results may be adversely and materially affected by continued downward trends or uncertainty in the United States or global economies.
 
Foreign currency fluctuations could adversely impact our financial condition and results of operations.
 
We generally purchase our products in U.S. dollars.  However, we source a large portion of our products from countries other than the United States.  The cost of these products may be affected by changes in the value of the applicable currencies.  Changes in currency exchange rates may also affect the U.S. dollar value of the foreign currency denominated sales that occur in other countries (currently Canada and the European Union).  This revenue, when translated into U.S. dollars for consolidated reporting purposes, could be materially affected by fluctuations in the U.S. dollar, negatively impacting our results of operations and our ability to generate revenue growth.
 
We face risks related to the effect of economic uncertainty.
 
​During events of economic downturn and slow recovery, our growth prospects, results of operations, cash flows and financial condition could be adversely impacted.  Our stores offer leather and leathercraft-related items, which are viewed as discretionary items.  Pressure on discretionary income brought on by economic downturns and slow recoveries, including housing market declines, rising energy prices and weak labor markets, may cause consumers to reduce the amount they spend on discretionary items.  The inherent uncertainty related to predicting economic conditions makes it difficult for us to accurately forecast future demand trends, which could cause us to purchase excess inventories, resulting in increases in our inventory carrying cost, or limit our ability to satisfy customer demand and potentially lose market share.
 
While the impact of the COVID-19 pandemic has mostly receded, there are residual effects such as higher consumer prices and interest rates.  Furthermore, another serious outbreak of coronavirus or other deadly disease could also have a material adverse effect on our business and liquidity.
 
The COVID-19 pandemic had an unprecedented and lasting impact on the U.S. economy, some of which continues to today. The possibility of another outbreak of a coronavirus variant or other deadly disease that would have material adverse effect on the economy, our supply chain partners, our employees and our customers is now all too real.  While we are better prepared to handle a future pandemic, it could impact our ability to keep our stores open, to obtain merchandise or payment terms from our vendors, to transport merchandise to and from our warehouse, to operate our warehouse, factory and other facilities that require on-site activities, and thus materially adversely affect our revenues, earnings, liquidity and cash flows.
 
Risks Related to Legal, Regulatory and Compliance
 
If the United States maintains current tariffs on products manufactured in China, or if additional tariffs or trade restrictions are implemented by other countries or by the U.S., the cost of our products manufactured in China or other countries and imported into the U.S. or other countries could increase.  This could in turn adversely affect the profitability for these products and have an adverse effect on our business, financial condition and results of operations.
 
In addition, the violation of labor, environmental or other laws by an independent manufacturer or supplier, or divergence of an independent manufacturer’s or supplier’s labor practices from those generally accepted as ethical or appropriate in the U.S., could interrupt or otherwise disrupt the shipment of our products, harm our trademarks or damage our reputation.  The occurrence of any of these events could materially adversely affect our business, financial condition and results of operations.
 
Our success depends on the continued protection of our trademarks and other proprietary intellectual property rights.
 
Our trademarks and other intellectual property rights are important to our success and competitive position, and the loss of or inability to enforce our trademark and other proprietary intellectual property rights could harm our business.  We devote substantial resources to the establishment and protection of our trademark and other proprietary intellectual property rights on a worldwide basis.  Despite any precautions we may take to protect our intellectual property, policing unauthorized use of our intellectual property is difficult, expensive, and time consuming, and we may be unable to adequately protect our intellectual property or determine the extent of any unauthorized use.  Our efforts to establish and protect our trademark and other proprietary intellectual property rights may not be adequate to prevent imitation or counterfeiting of our products by others, which may not only erode sales of our products but may also cause significant damage to our brand name.  Further, we could incur substantial costs in legal actions relating to our use of intellectual property or the use of our intellectual property by others.  Even if we are successful in these actions, the costs we incur could have a material adverse effect on us.
 
ITEM 1B.
UNRESOLVED STAFF COMMENTS
 
Not applicable.
 
ITEM 1C.
CYBERSECURITY
 
Cybersecurity Risk Management and Strategy
The Company recognizes the critical importance of developing, implementing, and maintaining robust cybersecurity measures to safeguard its information systems and protect the confidentiality, integrity, and availability of its data.  The Company’s information security program is managed by its Vice President, Operations and Technology, whose team is responsible for leading Company-wide cybersecurity strategy, policy, standards, architecture, and processes.

We design and assess our program based on the National Institute of Standards and Technology Cybersecurity Framework (NIST CSF and AI Risk Management Framework). This does not mean that we meet any particular technical standards, specifications, or requirements, but only that we use the NIST CSF as a guide to help us identify, assess, and manage cybersecurity risks relevant to our business.
Information about cybersecurity risks and our risk management processes is collected, analyzed and considered as part of our overall enterprise risk management program.

Key components of our cybersecurity risk management program
The Company’s cybersecurity program includes:


Advanced security infrastructure with state-of-the-art firewalls and intrusion detection systems.

Regular cybersecurity training for employees.

Strict data access controls and authentication protocols.

Continuous monitoring of our networks and systems for signs of unauthorized activity.

Partnerships with leading cybersecurity software and hardware providers for real-time systems monitoring and threat intelligence.
 
In the event of a cybersecurity incident, the Company’s response plan includes:


Immediate containment and assessment of the incident.

Notification to relevant stakeholders, including officers, board members, investors and customers where appropriate, in compliance with legal and regulatory requirements.

Cooperation with law enforcement and regulatory bodies as needed.

Post-incident analysis and measures to prevent future occurrences.
 
At this time, we have not identified risks from known cybersecurity threats, including as a result of any prior cybersecurity incidents, that have materially affected us, including our operations, business strategy, results of operations, or financial condition. We face certain ongoing risks from cybersecurity threats that, if realized, are reasonably likely to materially affect us, including our operations, business strategy, results of operations, or financial condition. See “Risk Factors”.

Cybersecurity Governance
The Company’s Board of Directors oversees management’s cybersecurity strategy.  Management provides a full briefing on various cybersecurity risk matters including risk assessments, mitigation strategies, areas of emerging risk and other areas of importance at least annually.  In the event of a cybersecurity incident determined to be significant, management will notify the Board.

The Company remains vigilant in its efforts to protect its systems, data, and stakeholders from cybersecurity threats and believes that its proactive and comprehensive approach positions it well to manage these risks effectively.

ITEM 2.
PROPERTIES
 
We lease our store locations, with the exception of our flagship store located in Fort Worth, Texas.  The majority of our stores have initial lease terms of at least five years.  The leases are generally renewable, with increases in lease rental rates in some cases.  We believe that all of our properties are adequately covered by insurance.  We own the 22,000 square foot building that houses our flagship store.  Further, we own our corporate headquarters, which includes our central distribution center and production facility, sales, marketing, administrative, and executive offices.  The facility consists of 191,000 square feet located on approximately 30 acres.
 
The following table summarizes the locations of our leased premises as of the date of this filing:
 
U. S. Locations:
Alabama
1
 
Missouri
3
Alaska
1
 
Montana
1
Arizona
3
 
Nebraska
1
Arkansas
1
 
Nevada
2
California
7
 
New Jersey
1
Colorado
4
 
New Mexico
2
Connecticut
1
 
New York
2
Florida
4
 
North Carolina
2
Georgia
2
 
Ohio
3
Idaho
1
 
Oklahoma
2
Illinois
1
 
Oregon
2
Indiana
1
 
Pennsylvania
3
Iowa
1
 
South Dakota
1
Kansas
1
 
Tennessee
3
Kentucky
1
 
Texas
16
Louisiana
2
 
Utah
4
Maryland
1
 
Washington
3
Massachusetts
1
 
Wisconsin
1
Michigan
2
 
Wyoming
1
Minnesota
2
     
         
Canadian Locations:
Alberta
3
 
Ontario
3
British Columbia
1
 
Saskatchewan
1
Manitoba
1
     
Nova Scotia
1
     
         
International Locations:
Spain
1
     

The broader economic impact of the pandemic and the war in Ukraine and the Middle East have put pressure on store profitability with dampened demand, higher wages and staffing challenges, rising retail rents, and increases in other retail store operating costs.  We regularly review recent and future projected store 4-wall cash flow taking these forecasted costs as well as projected consumer demand, other nearby stores and a number of other factors into consideration when making decisions to close or open stores in a given location.  In 2022, we closed four store locations that met a number of the criteria for closure, three of which were at the end of the lease, and one of which we paid a negotiated early lease termination.  We also opened one new location at Fort Liberty, NC.   In 2023, we closed two locations that met a number of the criteria for closure including the Fort Liberty location, which was not meeting its sales targets, and we opened one new location in Queens NY.
 
ITEM 3.
LEGAL PROCEEDINGS
 
We are periodically involved in various 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. See discussion of Legal Proceedings in Note 8, Commitments and Contingencies of the Notes to the Consolidated Financial Statements included in Item 8 of this Form 10-K.
 
ITEM 4.
MINE SAFETY DISCLOSURES
 
Not applicable.
 
PART II
 
ITEM 5.
MARKET FOR REGISTRANT’S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES
 
Our common stock trades on the Nasdaq Capital Market under the symbol “TLF.”
 
There were approximately 278 stockholders of record on February 29, 2024.
 
We did not sell any shares of our equity securities during our fiscal year ended December 31, 2023 that were not registered under the Securities Act.
 
Our Board of Directors did not authorize any dividends during the fiscal years ended December 31, 2023 or 2022.  Our Board of Directors may consider future cash dividends after giving consideration to our profitability, cash flow, capital requirements, current and forecasted liquidity, as well as financial and other business conditions existing at the time.  This policy is subject to change based on future industry and market conditions, as well as other factors.
 
We did not repurchase any shares of our common stocks during the fourth quarter of fiscal year 2023.
 
ITEM 6.
SELECTED FINANCIAL DATA
 
We are a smaller reporting company as defined in Item 10(f)(1) of SEC Regulation S-K and are not required to provide information under this item.
 
ITEM 7.
MANAGEMENT’S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS
 
This discussion is intended to assist in understanding our financial performance and should be read in conjunction with our consolidated financial statements and the notes accompanying those consolidated financial statements included elsewhere in this Form 10-K, including the information under the caption “Summary of Critical Accounting Policies.”  In addition to historical financial information, the following management’s discussion and analysis may contain forward-looking statements.  These statements reflect our expectations or estimates based on the information we have today but are not guarantees or predictions of future performance.  They involve known and unknown risks, uncertainties, and other factors, many of which are beyond our control, and which may cause actual results to differ materially from the statements contained here.  You are cautioned not to put undue reliance on these forward-looking statements.  The Company assumes no obligation to update or otherwise revise these forward-looking statements, except as required by law.  More discussion of risks can be found under Item 1A, Risk Factors.
 
Summary
 
The Business and Strategy
 
Tandy Leather Factory, Inc. is one of the world’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.  Today, our mission remains to build on our legacy of inspiring the timeless art and trade of leatherworking.
 
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.
 
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.  We produce leather lace, cut leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites. We also offer production services to our business customers such as cutting (“clicking”) and splitting and some assembly. We maintain our principal offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.
 
Currently, the Company operates a total of 102 retail stores.  There are 91 stores in the United States (“U.S,”), 10 stores in Canada and one store in Spain.
 
Tandy Leather has been introducing people to leatherworking for over 100 years.  Our stores have been and continue to be our competitive advantage: where our consumers learn the craft in classes, open table, 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.  Our websites provide inspiration, detailed product descriptions and specifications, educational information and videos, and a convenient place to also purchase product – especially for those who are far from our retail stores, including a growing international customer base.  For many of our retail and web customers, leatherworking evolves from a passion to a trade.  Our Commercial Division is tailored to the needs of those customers who build businesses around leather.  With dedicated direct account representatives, a direct-from-our-warehouse shipping model, volume-based competitive pricing, customized product development, and production and pre-production services, we are building long-term, strategic relationships with our largest customers.
 
With COVID-19 and restatement related impacts behind us, and with initiatives to improve our brand proposition and to build the foundation for a modern and efficient retail business taking hold, we believe we have made significant progress toward building a durable, profitable business model.  Our cost of sales and operating expenses have stabilized, and we believe we have the structure, and the operating nimbleness, that can deliver operating profit and free cash flow even in the face of economic headwinds.  Going forward, our strategy is to continue to manage our cost base and use of cash and focus on strengthening our sales by leveraging our competitive advantage of our retail stores.  Improving our employee product knowledge, customer service level and community engagement as well as expanding workshop space in stores with machines are the highest priorities.  We need to continue to give customers good reasons to visit stores, and an excellent return on their time investment when they do.
 
Results of Operations
 
The following table presents selected financial data:
 
(in thousands)
 
2023
   
2022
   
$ Change
   
% Change
 
Sales
 
$
76,229
   
$
80,335
   
$
(4,106
)
   
(5.1
)%
Gross profit
   
45,163
     
46,497
     
(1,334
)
   
(2.9
)%
Gross margin percentage
   
59.2
%
   
57.9
%
   
-
     
1.3
%
Operating expenses
   
40,753
     
45,109
     
(4,356
)
   
(9.7
)%
Income from operations
 
$
4,410
   
$
1,388
   
$
3,022
     
217.7
%

Net Sales
 
Consolidated net sales decreased by $4.1 million, or 5.1%, from 2022 to 2023.  About $1.3 million of the decline came from stores that were open in 2022 but closed in 2023.  We believe the rest of the decrease in sales was due to continued weaker consumer demand as a result of inflation and ongoing uncertainty related to global political, economic and public health concerns.
 
Our store footprint consisted of 102 stores at December 31, 2023 and 103 stores at December 31, 2022.
 
Since January 1, 2023, we closed two stores and opened one store.   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.  We use similar factors to determine whether to open new stores.
 
Gross Profit
 
Gross profit decreased by $1.3 million, or 2.9%, from 2022 to 2023. Our gross margin percentage for the year ended December 31, 2023 increased to 59.2% versus 57.9% in the same period in 2022, due to reduction in freight and warehouse overhead, relatively stronger full-priced selling throughout the year and product and customer mix shifts.
 
Operating Expenses
 
(in thousands)
 
2023
   
2022
 
Operating expenses
 
$
40,753
   
$
45,109
 
Non-routine items related to restatement
   
-
     
(246
)
Adjusted operating expenses
 
$
40,753
   
$
44,863
 
 
               
Operating expenses % of sales
   
53.5
%
   
56.2
%
Adjusted operating expenses % of sales
   
53.5
%
   
55.8
%

Operating expenses declined by $4.3 million in 2023 as compared to the prior year.  The primary drivers of the decrease were reduced contract labor of approximately $1.2 million, primarily in accounting and warehouse, as we hired permanent, full-time staff and retail employment costs of $1.5 million resulting from retail labor initiatives. Other savings initiatives included reduced insurance and other taxes of $0.6 million, reduced outside services of $0.4 million, and lower occupancy, supplies and other expenses  combined for another $1.0 million in savings, partially offset by increased bonus compensation of $0.5 million.
 
Other Income
 
Other income consists primarily of interest income and foreign currency gain.  For the year ended December 31, 2023, we recognized other income of $0.1 million.  During the year ended December 31, 2022, we recognized other income of less than $0.1 million related to interest earned on our short term investment.
 
Provision for Income Taxes
 
Our effective tax rate was 17.1% and 12.9% for the years ended December 31, 2023 and 2022, 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, and the release of valuation allowance associated with our deferred tax assets.
 
Capital Resources, Liquidity and Financial Condition
 
We require cash principally for day-to-day operations, to purchase inventory and to finance capital investments.  We expect to fund our operating and liquidity needs primarily from a combination of current cash balances, and cash generated from operating activities.  Any excess cash will be invested as determined by our Board of Directors in accordance with its approved investment policy.  Our cash balance as of December 31, 2023 totaled $12.2 million.
 
On January 3, 2023, the Company entered into a credit agreement (the “Credit Agreement”) with JPMorgan Chase Bank, N.A.  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.  As security for the credit facility, the Company has pledged as collateral certain of its assets, including the Company’s cash in deposit accounts, inventory and equipment.  As of the date of this filing, no funds had been borrowed under this facility.
 
Spain Loan
 
During the second quarter of 2020, the Company borrowed $0.4 million from Banco Santander S.A. under the Institute of Official Credit Guarantee for Small and Medium-sized Enterprises in order to facilitate the continuation of employment and to attenuate the economic effects of the COVID-19 virus.  This loan was provided for by the Spanish government as part of a COVID-19 relief program.  During the second quarter of 2022, we repaid this loan in full.
 
Share Repurchase Program
 
On August 8, 2022, the Board of Directors approved a new program to repurchase up to $5.0 million of the Company’s common stock on the open market on or prior to August 31, 2024.  As of December 31, 2022 and December 31, 2023, $5.0 million remained available for repurchase under this new program.
 
On April 11, 2022, we entered into an agreement with two institutional shareholders of the Company, to repurchase 359,500 shares of our common stock, par value $0.0024 in a private transaction. The purchase price was $5.00 per share for a total of $1.8 million. The closing of the repurchases took place on April 22, 2022, and these shares were subsequently cancelled. Prior to the repurchase, the shares represented approximately 4.2% of our outstanding common stock.
 
The direct share repurchases described above were separately authorized by our Board of Directors and did not reduce the remaining amount authorized to be repurchased under the open-market plan that was approved by the Board of Directors at the time.  In July 2022, the Company repurchased 600 shares of stock under the open market plan.
 
Cash Flows
 
(amounts in thousands)
 
2023
   
2022
 
Net cash provided by operating activities
 
$
4,537
   
$
1,154
 
Net cash used in investing activities
   
(576
)
   
(625
)
Net cash used in financing activities
   
(26
)
   
(2,171
)
Effect of exchange rate changes on cash and cash equivalents
   
249
     
(538
)
Net increase (decrease) in cash and cash equivalents
 
$
4,184
   
$
(2,180
)

For 2023, we generated $4.5 million of cash from operations driven by net income of $3.8 million, the add-back of non-cash expenses of $4.5 million, including depreciation, amortization, loss on disposal of fixed assets, stock based compensation, and deferred taxes, an increase in accrued expenses and other liabilities of $0.5 million, a decrease in inventory of $0.2 million and a decrease in accounts receivable of $0.1 million; offset by a decrease in operating lease liabilities payments of $3.6 million, a decrease in accounts payable of $0.8 million, and an increase in prepaid expenses of $0.2 million. We invested $0.6 million in capital expenditures for the purchase of store fixtures and systems implementations. The activities above, in addition to the effect of exchange rate changes, resulted in a net increase in cash of $4.2 million.
 
For 2022, we generated $1.1 million of cash from operations driven by net income of $1.2 million, the add-back of non-cash expenses of $5.5 million, including depreciation, amortization, and stock-based compensation, a decrease in income taxes, net of $0.9 million due to collecting $1.4 million of refunds from NOL carryback claims that partially offset current year installment payments and recording the current year income tax provision, and a decrease in accounts receivable of $0.2 million among other changes, offset by the increase of inventory of $0.3 million (including currency effects), a decrease in accounts payable and accrued expenses of $3.3 million and a decrease in operating lease liabilities of $3.4 million.  We invested $0.6 million in capital expenditures for the purchase of store fixtures and systems implementations.  We used cash in financing activities to repurchase 360,100 shares of Tandy common stock in purchases totaling $1.8 million at an average price of $5.00 per share, and to repay the loan from Spain in the amount of $0.4 million. The activities above, in addition to the effect of exchange rate changes, resulted in a net decrease in cash of $2.2 million.
 
We believe that cash flow from operations and our existing cash reserves will be adequate to fund our operations through 2024, considering the current effects of the inflationary pressure on our business and cash flow and our current business performance.  In addition, we anticipate that this cash flow and our current cash reserves will enable us to meet our contractual obligations and commercial commitments throughout 2024.  There can be no assurance, however, that the current global economic conditions would not result in further restrictions on our business operations in a manner that would more materially impact our cash flow.
 
Off-Balance Sheet Arrangements
 
We did not have any off-balance sheet arrangements during 2023 or 2022, and we do not currently have any such arrangements.
 
Summary of Critical Accounting Policies
 
The preparation of the Company’s Consolidated Financial Statements in accordance with accounting principles generally accepted in the United States 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’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.  The policies discussed below require estimates that contain a significant degree of judgement.  The use of estimates is pervasive throughout the Consolidated Financial Statements, but the accounting policies and estimates considered most critical are as follows.
 
Revenue Recognition.  Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at the store counter, (2) shipment of product generally via web sales, and (3) sales of product directly to commercial customers through our commercial account representatives.  We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise over to a customer.  At the store counter, our performance obligation is met, and revenue is recognized when a sales transaction occurs with a customer.  For (2) and (3) above, our performance obligation is met when merchandise is shipped to a customer, and revenue is recognized when control passes to the customer.  Shipping terms are normally free on board (“FOB”) shipping point and control passes when the merchandise is shipped to the customer.  Sales tax and comparable foreign tax is 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.
 
The 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.  Under our sales returns policy, merchandise may be returned, under most circumstances, up to 60 days after date of purchase.  As merchandise is returned, the company records the sales return against the sales return allowance.
 
We 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.
 
Inventory.  Inventory is stated at the lower of first-in, first-out (“FIFO”) cost or net realizable value, and FIFO layers are maintained at the location level.  Finished goods held for sale includes 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.  Assembled inventory including raw materials and work-in-process is valued on a FIFO basis using full absorption accounting which includes material, labor, and other applicable assembly 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.
 
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 (“UV”) 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 FIFO cost or net realizable value.
 
Since the determination of net realizable value of inventory involves both estimation and judgement 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.
 
The majority of inventory purchases and commitments are made in U.S. dollars in order to limit the Company’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.  Inventory is physically counted twice annually in the Texas distribution center.  At the store level, inventory is physically counted each quarter.  Inventory is then adjusted in our accounting system to reflect actual count results.
 
Leases.  We lease certain real estate for our retail store locations and warehouse equipment for our Texas distribution center, both under long-term lease agreements. Starting in 2019, with the adoption of Accounting Standards Update (“ASU”) 2016-02, Leases (Topic 842), once we have determined an arrangement is a lease, at inception we recognize a lease asset and lease liability at commencement date based on the present value of the lease payments over the lease term.  We elected not to record leases with an initial term of 12 months or less on the balance sheet for all our asset classes. The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term.
 
For our operating leases, the present value of our lease payments may include: (1) rental payments adjusted for inflation or market rates, and (2) lease terms with options to renew the lease when it is reasonably certain we will exercise such an option. The exercise of lease renewal options is generally at our discretion. 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.
 
We recognize rent expense related to our operating leases on a straight-line basis over the lease term. Rent expense is recorded in operating expenses.
 
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.  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. The remaining asset balance in our finance lease is only residual value and only an insignificant interest expense of less than $100 dollars was incurred and is recorded on the consolidated statements of operations and comprehensive income.
 
None of our lease agreements contain material residual value guarantees or material restrictive covenants.  As of December 31, 2023, we have no sublease agreements and no lease agreements in which we are named as a lessor.  We do not have any contingent rental payment agreements.  On September 8, 2022, we entered into a concession agreement for our store on the Fort Liberty (formerly Fort Bragg) military base in which the concession payment is based on a sliding scale percentage of sales.  At the end of November, 2023, we closed that store.
 
Impairment of Long-Lived Assets.  We evaluate long-lived assets on a quarterly basis to identify events or changes in circumstances (“triggering events”) that indicate the carrying value of certain assets may not be recoverable.  Upon the occurrence of a triggering event, right-of-use (“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’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.
 
Stock-based Compensation.  The Company’s stock-based compensation relates primarily to restricted stock unit (“RSU”) 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’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.  The total compensation expense is reduced by actual forfeitures as they occur over the requisite service period of the awards.  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.
 
Income Taxes.  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.  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.  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.  We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgement 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 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.
 
ITEM 8.  CONSOLIDATED FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA
graphic

Report of Independent Registered Public Accounting Firm
 
Board of Directors and Shareholders
Tandy Leather Factory
 
Opinion on the Financial Statements
 
We have audited the accompanying consolidated balance sheets of Tandy Leather Factory, Inc. and Subsidiaries (the Company) as of December 31, 2023 and 2022, and the related consolidated statements of operations and comprehensive income, cash flows, and stockholders’ equity for each of the two years in the period ended December 31, 2023, and the related notes (collectively referred to as the “financial statements”). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2023 and 2022, and the results of its operations and its cash flows for each of the two years in the period ended December 31, 2023, in conformity with accounting principles generally accepted in the United States of America.
 
Basis for Opinion
 
These financial statements are the responsibility of the entity’s management. Our responsibility is to express an opinion on these financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) ("PCAOB") and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.
 
We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits, we are required to obtain an understanding of internal control over financial reporting but not for the purpose of expressing an opinion on the effectiveness of the entity’s internal control over financial reporting. Accordingly, we express no such opinion.
 
Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.
 
Critical Audit Matters
 
The critical audit matter communicated below is a matter arising from the current period audit of the financial statements that was communicated or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matter below, providing a separate opinion on the critical audit matters or on the accounts or disclosures to which it relates.
 
Valuation of Inventory
 
The Company’s accounting policy for the recognition of inventory and cost of sales is described in Note 2 to the financial statements. The Company has recorded an inventory balance of approximately $37.9 million and cost of sales of approximately $31.0 million as of and for the year ended December 31, 2023. Additionally, Note 3 to the financial statements provides further detail of the components of the year-end inventory balance.
 
The Company’s merchandise inventories are stated at the lower of cost or net realizable value using a first-in, first-out costing principle. Finished goods inventory costs include the cost of merchandise purchases, the costs to bring the merchandise to the Company’s distribution center, warehousing and handling expenditures, and distributing and delivering merchandise to the Company’s stores. The determination of amounts that are required to be capitalized to inventory resulting from warehouse and handling expenditures and transportation costs (together “overhead costs”) are subjective and are generally based on an allocation ratio calculated by the Company using the previous year’s actual overhead costs and the value of inventory handled during that year, subject to adjustment for current economic or market conditions. Additionally, to determine if the value of their inventory should be written down, the Company considers many factors, including condition of the product (excessive scars, discoloring or damage from UV light), current and anticipated demand that may cause the product to become slow moving and age of the merchandise to ensure that the product line is considered fresh. If a write-down is warranted, the carrying value of the merchandise is reduced from its original cost to the lower of its cost or net realizable value.
 
Our audit procedures to evaluate these items involved a higher degree of auditor judgment and the involvement of more senior members of the engagement team in executing, supervising, and reviewing the results of the procedures.
 
How the Critical Audit Matter Was Addressed in the Audit
 
Our audit procedures related to the valuation of inventories included the following, among others:


We obtained an understanding of the controls over the valuation of inventory.
 
We tested the inventory costs incurred by the Company by reviewing supplier invoices and ensuring that appropriate application of the first-in first-out principle was followed.
 
We evaluated the appropriateness and consistency of management’s methodology used in allocating overhead costs to inventory.
 
We evaluated the appropriateness of the capitalized overhead costs by analyzing them against actual overhead costs incurred during the year.
 
We tested the mathematical accuracy of the Company’s inventory obsolescence reserve calculation.
 
We evaluated the appropriateness and consistency of management’s methodology and assumptions used in developing its estimate of the inventory obsolescence reserve.
 
We performed analytical procedures on the current year reserve by comparing it to the prior year reserve and obtaining corroborating evidence to support any assumptions.
 
We tested on a sample basis, sales subsequent to year-end of the written-down items to ensure that the net realizable value was not lower than the previously written down value.
 
graphic

 WEAVER AND TIDWELL, L.L.P.

We have served as Tandy Leather Factory, Inc.’s auditor since 2003.
 
Oklahoma City, Oklahoma

March 22, 2024

Tandy Leather Factory, Inc.
Consolidated Balance Sheets
(amounts in thousands, except share data and per share data)

    December 31,
    December 31,
 
    2023     2022  
             
ASSETS
           
CURRENT ASSETS:
           
Cash and cash equivalents
 
$
12,159
   
$
7,975
 
Accounts receivable-trade, net of allowance for doubtful accounts of $31 and $56 at December 31, 2023 and December 31, 2022, respectively
   
264
     
370
 
Inventory
   
37,993
     
38,227
 
Income tax receivable
   
248
     
302
 
Prepaid expenses
   
475
     
272
 
Other current assets
   
113
     
106
 
Total current assets
   
51,252
     
47,252
 
                 
Property and equipment, at cost
   
28,678
     
28,124
 
Less accumulated depreciation
   
(18,131
)
   
(16,962
)
Property and equipment, net
   
10,547
     
11,162
 
                 
Operating lease assets
   
8,995
     
9,742
 
Financing lease assets
   
23
     
31
 
                 
Deferred income taxes
    880       -  
                 
Other assets
   
438
     
392
 
TOTAL ASSETS
 
$
72,135
   
$
68,579
 
                 
LIABILITIES AND STOCKHOLDERS’ EQUITY
               
CURRENT LIABILITIES:
               
Accounts payable-trade
 
$
2,333
   
$
3,082
 
Accrued expenses and other liabilities
   
3,140
     
2,681
 
Income taxes payable
    288       211  
Current portion of operating lease liabilities
   
3,172
     
2,881
 
Current portion of finance lease liabilities
   
-
     
15
 
Total current liabilities
   
8,933
     
8,870
 
                 
Deferred income taxes
    9       -  
Uncertain tax positions
   
388
     
450
 
Other non-current liabilities
   
205
     
326
 
Operating lease liabilities, non-current
   
6,253
     
7,469
 
Finance lease liabilities, non-current
   
1
     
1
 
                 
COMMITMENTS AND CONTINGENCIES (Note 8)
           
                 
STOCKHOLDERS’ EQUITY:
               
Common stock, $0.0024 par value; 25,000,000 shares authorized; 9,823,621 and 9,717,525 shares issued at December 31, 2023 and December 31, 2022, respectively; 8,399,245 and 8,293,150 shares outstanding at December 31, 2023 and December 31, 2022, respectively
   
23
     
23
 
Paid-in capital
   
3,981
     
3,222
 
Retained earnings
   
63,659
     
59,891
 
Treasury stock at cost (1,424,376 shares at December 31, 2023 and December 31, 2022)
   
(9,773
)
   
(9,773
)
Accumulated other comprehensive loss, net of tax
   
(1,544
)
   
(1,900
)
Total stockholders’ equity
   
56,346
     
51,463
 
TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY
 
$
72,135
   
$
68,579
 

The accompanying notes are an integral part of these Consolidated Financial Statements.

Tandy Leather Factory, Inc.
Consolidated Statements of Operations and Comprehensive Income
(amounts in thousands, except share and per share data)

   
For the Years Ended December 31,
 
   
2023
   
2022
 
             
Net sales
 
$
76,229
   
$
80,335
 
Cost of sales
   
31,066
     
33,838
 
Gross profit
   
45,163
     
46,497
 
                 
Operating expenses
   
40,753
     
45,109
 
                 
Income from operations
   
4,410
     
1,388
 
                 
Other income:
               
Interest income
   
(93
)
   
(9
)
Other, net
   
(42
)
   
(11
)
Total other income
    (135 )     (20 )
                 
Income before income taxes
   
4,545
     
1,408
 
                 
Provision for income taxes
   
777
     
181
 
                 
Net Income
 
$
3,768
   
$
1,227
 
                 
Foreign currency translation gain (loss), net
   
356
     
(527
)
                 
Comprehensive income
 
$
4,124
   
$
700
 
                 
Net income per common share:
               
Basic
 
$
0.45
   
$
0.15
 
Diluted
 
$
0.45
   
$
0.15
 
                 
Weighted average number of shares outstanding:
               
Basic
   
8,339,658
     
8,363,390
 
Diluted
   
8,369,976
     
8,394,567
 

The accompanying notes are an integral part of these Consolidated Financial Statements

Tandy Leather Factory, Inc.
Consolidated Statements of Cash Flows
(amounts in thousands)

   
For the Years Ended December 31,
 
   
2023
   
2022
 
Cash flows from operating activities:
           
Net income
 
$
3,768
   
$
1,227
 
Adjustments to reconcile net income to net cash provided by operating activities:
               
Depreciation and amortization
   
1,199
     
1,201
 
Operating lease asset amortization
   
3,427
     
3,230
 
Loss on disposal of assets
   
-
     
9
 
Stock-based compensation
   
770
     
1,060
 
Deferred income taxes
   
(902
)
   
(10
)
Changes in operating assets and liabilities:
               
Accounts receivable-trade
    107      
244
 
Inventory
   
231
     
(328
)
Prepaid expenses
   
(202
)
   
210
 
Other current assets
   
(12
)
   
34
 
Accounts payable-trade
    (752 )    
(1,739
)
Accrued expenses and other liabilities
   
462
     
(1,527
)
Income taxes, net
   
84
     
905
 
Other assets
    (45 )    
-
 
Operating lease liabilities
   
(3,598
)
   
(3,362
)
Total adjustments
   
769
     
(73
)
Net cash provided by operating activities
   
4,537
     
1,154
 
                 
Cash flows from investing activities:
               
Purchase of property and equipment
   
(576
)
   
(635
)
Proceeds from sales of assets
   
-
     
10
 
Net cash used in investing activities
   
(576
)
   
(625
)
                 
Cash flows from financing activities:
               
Payments on long-term debt
    -       (359 )
Payment of finance lease obligations
   
(15
)
   
(14
)
Repurchase of common stock
   
(11
)
   
(1,798
)
Net cash used in financing activities
   
(26
)
   
(2,171
)
                 
Effect of exchange rate changes on cash and cash equivalents
    249      
(538
)
                 
Net increase (decrease) in cash and cash equivalents
   
4,184
     
(2,180
)
                 
Cash and cash equivalents, beginning of period
   
7,975
     
10,155
 
Cash and cash equivalents, end of period
 
$
12,159
   
$
7,975
 

The accompanying notes are an integral part of these Consolidated Financial Statements.

Tandy Leather Factory, Inc.
Consolidated Statements of Cash Flows - continued
(amounts in thousands)

   
For the Years Ended December 31,
 
   
2023
   
2022
 
Supplemental disclosures of cash flow information:
           
Interest paid during the period
 
$
-
   
$
15
 
Income tax paid (refunded) during the period, net
 
$
984
 
$
(430
)
                 
Supplemental disclosures of non-cash activity:
               
Operating lease assets obtained in exchange for lease liabilities, net
  $ 3,396     $ 3,884  

The accompanying notes are an integral part of these Consolidated Financial Statements.

Tandy Leather Factory, Inc.
Condensed Consolidated Statements of Stockholders’ Equity
(amounts in thousands, except share data)

   
Number of
Shares
Common Stock
Outstanding
   
Par Value
   
Paid-in Capital
   
Treasury Stock
   
Retained
Earnings
   
Accumulated
Other Comprehensive
Income (Loss)
   
Total
 
Balance, December 31, 2021
   
8,547,335
   
$
24
   
$
3,959
   
$
(9,773
)
 
$
58,664
   
$
(1,373
)
 

51,501
 
Stock-based compensation expense
   
-
     
-
     
1,060
     
-
     
-
     
-
     
1,060
 
Issuance of restricted stock
   
140,277
     
-
     
-
     
-
     
-
     
-
     
-
 
Purchase of vested stock for employee payroll tax
    (34,362 )     -       -       -       -       -       -  
Repurchase of common stock
    (360,100 )     (1 )     (1,797 )     -       -       -       (1,798 )
Net income
   
-
     
-
     
-
     
-
     
1,227
     
-
     
1,227
 
Foreign currency translation adjustments, net of tax
   
-
     
-
     
-
     
-
     
-
     
(527
)
   
(527
)
Balance, December 31, 2022
   
8,293,150
   
$
23
   
$
3,222
   
$
(9,773
)
 
$
59,891
   
$
(1,900
)
 
$
51,463
 
Stock-based compensation expense
   
-
     
-
     
770
     
-
     
-
     
-
     
770
 
Issuance of restricted stock
   
108,796
     
-
     
-
     
-
     
-
     
-
     
-
 
Repurchase of common stock     (2,701 )     -       (11 )                             (11 )
Net income
   
-
     
-
     
-
     
-
     
3,768
     
-
     
3,768
 
Foreign currency translation adjustments, net
   
-
     
-
     
-
     
-
     
-
     
356
     
356
 
Balance, December 31, 2023
   
8,399,245
   

23
   

3,981
   

(9,773
)
 

63,659
   

(1,544
)
 

56,346
 

The accompanying notes are an integral part of these Consolidated Financial Statements.

TANDY LEATHER FACTORY, INC.
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
DECEMBER 31, 2023 and 2022

1.  DESCRIPTION OF BUSINESS

Tandy Leather Factory, Inc. (“TLF,” “we,” “our,” “us,” the “Company,” “Tandy,” or “Tandy Leather” mean Tandy Leather Factory, Inc., together with its subsidiaries) is one of the world’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.

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.

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.  We produce leather lace, cut leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.  We also offer production services to our business customers such as cutting (“clicking”) and splitting and some assembly.   We maintain our principal offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.

The Company currently operates a total of 102 retail stores.  There are 91 stores in the United States (“U.S.”), ten stores in Canada and one store in Spain.

The Company’s common shares currently trade on Nasdaq Capital Market under the symbol “TLF.”

We operate as a single segment and report on a consolidated basis.

2.  SIGNIFICANT ACCOUNTING POLICIES

Management estimates and reporting

The preparation of the Company’s Consolidated Financial Statements in accordance with accounting principles generally accepted in the United States (“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’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.  The policies discussed below require estimates that contain a significant degree of judgement.  The use of estimates is pervasive throughout the Consolidated Financial Statements, but the accounting policies and estimates considered most significant are as follows.

Principles of consolidation

Our Consolidated Financial Statements include the accounts of Tandy Leather Factory, Inc. and its active wholly-owned subsidiaries, The Leather Factory, L.P. (a Texas limited partnership), Tandy Leather Company, L.P. (a Texas limited partnership), The Leather Factory of Canada, Ltd. (a Canadian corporation), and Tandy Leather Factory España, S.L. (a Spanish corporation).  All intercompany accounts and transactions have been eliminated in consolidation.

Deconsolidation of Foreign Subsidiaries

The UK and Australia entities were legally terminated in 2023 and as a result of the termination, we deconsolidated our UK and Australia entities and the impact of the deconsolidation resulted in a $0.5 million loss that is reported as part of “Other, net” on the consolidated statement of operations and comprehensive income.
 
Correction of an error in previously issued financial statements

The 2022 consolidated financial statements included an out of period adjustment that was the result of unreconciled inventory receipts for in-transit inventory, which were identified in the fourth quarter of 2022. We corrected misstatements in the first three quarters of fiscal year 2023 as disclosed in our 2022 10-K, we reduced inventory and accounts payable balances by approximately $0.9 million, and adjusted changes to inventory and accounts payable in the operating activities section of the consolidated statements of cash flows by the same amount. There is no impact of this adjustment to the consolidated statements of operations and comprehensive income or retained earnings.

Cash and cash equivalents

The Company considers investments with a maturity when purchased of three months or less to be cash equivalents.  All credit card, debit card and electronic transfer transactions that process in less than ninety days including our T-Bills are classified as cash and cash equivalents.

Accounts receivable and expected credit losses

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 for doubtful accounts.  Accounts receivable are generally due within 30 days of invoicing.  Our accounts receivable balance as of December 31, 2023, December 31, 2022 and January 1, 2022 was $0.3 million, $0.4 million, and $0.6 million, respectively.

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 December 31, 2023, 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 December 31, 2023, December 31, 2022, and January 1, 2022 each totaled less than $0.1 million.

Foreign currency translation and transactions

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 are recorded in stockholders’ equity, net of tax.  For the years ended December 31, 2023 and 2022, we recorded foreign currency translation gain of $0.4 million and loss adjustments of $0.5 million, respectively.

The deconsolidation of the UK and Australia entities resulted in a $0.5 million loss reclassification adjustment out of accumulated other comprehensive income (loss) which is reported net within the “Foreign currently translation gain (loss), net”.

Gains and losses resulting from foreign currency transactions are recorded in other, net within the statements of operations and comprehensive income.

Revenue recognition

Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at the store counter, (2) shipment of product generally via web sales, and (3) sales of product directly to commercial customers through our commercial account representatives.  We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise over to a customer. At the store counter, our performance obligation is met, and revenue is recognized when a sales transaction occurs with a customer.  Our performance obligation for 2) and 3) are met when merchandise is shipped to a customer, and revenue is recognized when control passes to the customer.  Shipping terms are normally free on board (“FOB”) shipping point and control passes when the merchandise is shipped to the customer.  Sales tax and comparable foreign tax is excluded from net sales, while shipping charged to our customers is included in net sales.  Net sales is based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.  As of December 31, 2022, January 1, 2023, and December 31, 2023, we had received approximately $0.3 million, $0.3 million, and $0.3 million in credit card payments that had not shipped as of the end of the year and this was recorded in deferred revenue under other liabilities on the Balance Sheet.

The sales return allowance included in accrued expense and other liabilities was $0.2 million, $0.1 million, and $0.2 million as of December 31, 2023 and 2022 and January 1, 2022 respectively.  The estimated value of merchandise expected to be returned included in other current assets was less than $0.1 million as of December 31, 2023 and 2022 and January 1, 2022.

We 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. We include our gift card liability in accrued expenses and other liabilities.  On January 1, 2023, the opening balance of the gift card liability was $0.3 million.  During 2023, we issued $0.5 million of gift cards, and $0.5 million of gift cards were redeemed and recognized as revenue. At December 31, 2023, our gift card liability balance was $0.2 million. On January 1, 2022 and December 31, 2022, the gift card liability was $0.4 and $0.3 million respectively.

Disaggregated revenue

In the following table, revenue for the years ended December 31, 2023 and 2022 is disaggregated by geographic areas as follows:

(in thousands)
 
2023
   
2022
 
United States
 
$
67,696
   
$
71,665
 
Canada
    7,301       7,393  
Other
    1,232       1,277  
Net sales
 
$
76,229
   
$
80,335
 

Geographic sales information is based on the location where the order was fulfilled.

Discounts

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 classes 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.

Operating expense

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.

Property and equipment, net of accumulated depreciation

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 three to ten years for equipment and machinery, seven 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.

Inventory

Inventory is stated at the lower of first-in, first-out (“FIFO”) cost or net realizable value, and the 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.  Assembled 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 assembly 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.

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 (“UV”) 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.  Since the determination of net realizable value of inventory involves both estimation and judgement 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.

The majority of inventory purchases and commitments are made in U.S. dollars in order to limit the Company’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.

Inventory is physically counted twice annually in the Texas distribution center.  At the store level, inventory is physically counted each quarter.  Inventory is then adjusted in our accounting system to reflect actual count results.

Leases

We lease certain real estate for our retail store locations and warehouse equipment for our Texas distribution center, both under long-term lease agreements.  We determine if an arrangement is a lease at inception and recognize right-of-use (“ROU”) assets and lease liabilities at commencement date based on the present value of the lease payments over the lease term.  We elected not to record leases with an initial term of 12 months or less on the balance sheet for all our asset classes. The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term.

For operating leases, the present value of our lease payments 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.  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.

We recognize rent expense related to our operating leases on a straight-line basis over the lease term.  Rent expense is recorded in operating expenses.

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.  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. The remaining asset balance in our finance lease is only residual value and only an insignificant interest expense of less than $100 dollars was incurred and is recorded on the consolidated statements of operations and comprehensive income.

None of our lease agreements contain material residual value guarantees or material restrictive covenants.  We do not have any contingent rental payment agreements. On September 8, 2022, we entered into a concession agreement for our store on the Fort Liberty (formerly Fort Bragg) military base in which the concession payment was based on a sliding scale percentage of sales.  At the end of November, 2023, we closed that store. We have no sublease agreements and no lease agreements in which we are named as a lessor.  Refer to Note 4, Leases for further discussion of the Company’s leases.

Impairment of long-lived assets

We evaluate long-lived assets on a quarterly basis to identify events or changes in circumstances (“triggering events”) that indicate the carrying value of certain assets may not be recoverable.  Upon the occurrence of a triggering event, right-of-use (“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’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.

For the years ended December 31, 2023 and 2022, no impairment expense was recognized.

Earnings per share

Basic earnings per share (“EPS”) 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’s restricted stock plan, had been issued.  Anti-dilutive securities represent potentially dilutive securities which are excluded from the computation of diluted EPS as their impact would be anti-dilutive.  Diluted EPS is computed using the treasury stock method.

(in thousands, except share data)
 
 2023
   
2022
 
             
Numerator:
           
Net income
 
$
3,768
   
$
1,227
                 
Denominator:
               
Basic weighted-average common shares outstanding
   
8,339,658
     
8,363,390
 
Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan
   
3,218
     
8,735
 
Dilutive effect of service-based restricted stock awards granted to employees under the Plan
    27,100       22,442  
Diluted weighted-average common shares outstanding
    8,369,976       8,394,567  

(1) For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.

For additional disclosures regarding restricted stock awards and employee stock options, see Note 10, Stockholders’ Equity – Equity Compensation Plans.

Other intangible assets

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 in each of 2023 and 2022 and was recorded in operating expenses.  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. Our Other intangible assets” was fully amortized as of December 31, 2023 and is now included in “Other assets” on the face of the balance sheet.

Fair value of financial instruments

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:


Level 1 – observable inputs that reflect quoted prices in active markets for identical assets or liabilities.


Level 2 – 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.


Level 3 – significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.

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.

Our principal financial instruments consist of our money market investment or T-Bills maturing less than 90 days, accounts receivable, and accounts payable.  As of December 31, 2023 and 2022, 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 years ended December 31, 2023 and 2022.

Income taxes

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.

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.

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.

We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgement 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.

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.

Stock-based compensation

The Company’s stock-based compensation relates primarily to restricted stock unit (“RSU”) 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’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.

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.

Comprehensive income

Comprehensive income includes net income and certain other items that are recorded directly to stockholders’ equity.  The Company’s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.

Shipping and handling costs

Costs to ship products from our stores to our customers are included in operating expenses on the Consolidated Statements of Operations and Comprehensive Income.  Total costs were $3.2 million and $3.5 million for the years ended December 31, 2023, and 2022, respectively.

Advertising

Advertising costs include the cost of print, digital, direct mail, community events, trade shows, and our e-commerce platform.  Advertising costs are expensed as incurred.  Total advertising expense was $1.1 million and $1.2 million in 2023 and 2022, respectively.

Recently Adopted Accounting Pronouncements

The Company did not adopt any new accounting guidance that was applicable for the year ended December 31, 2023.

3.  BALANCE SHEET COMPONENTS

Inventory

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
On hand:
           
Finished goods held for sale
 
$
33,350
   
$
35,234
 
Raw materials and work in process
   
1,774
     
925
 
Inventory in transit
   
2,869
     
2,068
 
TOTAL
 
$
37,993
   
$
38,227
 

Property and Equipment

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
Building   $ 9,277     $ 9,266  
Land
   
1,451
     
1,451
 
Leasehold improvements
   
1,875
     
1,870
 
Equipment and machinery
   
8,469
     
7,931
 
Furniture and fixtures
   
7,452
     
7,471
 
Vehicles
   
154
     
135
 
     
28,678
     
28,124
 
Less: accumulated depreciation
   
(18,131
)
   
(16,962
)
TOTAL
 
$
10,547
   
$
11,162
 

Our property and equipment, net, was located in the following countries:

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
United States
 
$
10,414
   
$
10,989
 
Canada
   
133
     
173
 
Spain
   
-
     
-
 
   
$
10,547
   
$
11,162
 

Depreciation expense was $1.2 million and $1.2 million for the years ended December 31, 2023 and 2022, respectively.

Short-term Liabilities

Accrued Expenses and Other Liabilities
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
           
Accrued employee related costs
   
992
     
977
 
Unearned gift card revenue
   
223
     
256
 
Estimated returns
   
523
     
527
 
Sales and payroll taxes payable
   
1,141
     
693
 
Accrued vendor payables
    261      
228
 
TOTAL
 
$
3,140
   
$
2,681
 

4.  LEASES

The Company leases certain real estate and warehouse equipment under long-term lease agreements.

The Company performs interim reviews of its operating and finance lease assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. The Company recognized no impairment expense related to its operating lease assets during the year ended December 31, 2023 or December 31, 2022.

Additional information regarding the Company’s operating and finance leases is as follows (in thousands, except for lease term and discount rate information):

Leases
 
Balance Sheet Classification
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
               
Assets:
               
Operating
 
Operating lease assets
 
$
8,995
   
$
9,742
 
Finance
 
Financing lease assets
   
23
     
31
 
Total assets
     
$
9,018
   
$
9,773
 
                     
Liabilities:
                   
Current
                   
Operating
 
Current portion of operating lease liabilities
 
$
3,172
   
$
2,881
 
Finance
 
Current portion of finance lease liabilities
   
-
     
15
 
Non-current
                   
Operating
 
Operating lease liabilities, non-current
   
6,253
     
7,469
 
Finance
 
Finance lease liabilities, non-current
   
1
     
1
 
Total lease liabilities
     
$
9,426
   
$
10,366
 


Lease Cost
 
Income Statement Classification
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
               
Operating lease cost
 
Operating expenses
  $ 3,908     $ 3,737  
Operating lease cost
 
Impairment expense
    -       -  
Short-term lease cost
 
Operating expenses
    -       38  
Variable lease cost (1)
 
Operating expenses
    915       797  
Amortization of finance lease assets
 
Operating expenses
    7       7  
Interest on lease liabilities
 
Interest expense
    -       1  
Total lease cost
      $ 4,830     $ 4,580  

(1) Variable lease cost includes payment for certain real estate taxes, insurance, common area maintenance, and other charges related to lease agreements, which are not included in the measurement of the operating lease liabilities.

   
December 31, 2023
 
Maturity of Lease Liabilities
 
Operating Leases
   
Finance Leases
 
(in thousands)
           
2024
 
$
3,687
    $ -  
2025
   
2,755
      -
 
2026
   
2,103
      -  
2027
   
1,577
      -  
2028
   
731
      -  
Thereafter
   
275
      -  
Total lease payments
 
$
11,128
    $ -  
Less:  Interest
   
(1,702
)
    -  
Present value of lease liabilities
 
$
9,426
    $ -  

Other Information
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
           
Cash paid for amounts included in the measurement of lease liabilities:
           
Operating cash flows used in operating leases
 
$
3,955
   
$
3,871
 
Operating cash flows used in finance leases
   
-
     
1
 
Financing cash flows used in finance leases
   
15
     
14
 

Lease Term and Discount Rate
 
December 31, 2023
   
December 31, 2022
 
Weighted-average remaining lease term (years):
           
Operating leases
    3.6
      4.8
 
Finance leases
    0.0
      0.9
 
Weighted-average discount rate:
               
Operating leases
    4.8
%
    5.0
%
Finance leases
    6.0
%
    6.0
%

5.  NOTES PAYABLE AND LONG-TERM DEBT

During the second quarter of 2020, the Company borrowed $0.4 million from Banco Santander S.A. under the Institute of Official Credit Guarantee for Small and Medium-sized Enterprises in order to facilitate the continuation of employment and to attenuate the economic effects of the coronavirus (“COVID-19”) virus.  This loan was provided for by the Spanish government as part of a COVID-19 relief program, and on June 6, 2022, the Company repaid this loan in full.

On January 3, 2023, the Company entered into a credit agreement (the “Credit Agreement”) with JPMorgan Chase Bank, N.A.  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.  As security for the credit facility, the Company has pledged as collateral certain of its assets, including the Company’s cash in deposit accounts, inventory and equipment.  As of the date of this filing, no funds had been borrowed under this facility.

6.  EMPLOYEE BENEFIT AND SAVINGS PLANS

We have a 401(k) plan to provide retirement benefits for our employees.  As allowed under Section 401(k) of the Internal Revenue Code, the plan provides tax-deferred salary contributions for eligible employees and allows employees to contribute a percentage of their annual compensation to the plan on a pretax basis.  Employee contributions are limited to a maximum annual amount as set periodically by the Internal Revenue Code.  In 2023 and 2022, we matched 100% of the pretax employee contributions on the first 3% of eligible earnings and 50% of the pretax employee contributions on the next 2% of eligible earnings that are contributed by employees.  For the years ended December 31, 2023, and 2022, we recorded employer match expense of $0.3 million and $0.3 million, respectively.

The plan allows employees who meet the age requirements and reach the plan contribution limits to make a catch-up contribution. The catch-up contributions are not eligible for matching contributions.  In addition, the plan provides for discretionary matching contributions as determined by the Board of Directors.  There were no discretionary matching contributions made in 2023 or 2022.

We offer no postretirement or postemployment benefits to our employees.

7.  INCOME TAXES

The provision for income taxes consists of the following:

(in thousands)
 
Year Ended December 31,
 
Income Tax Benefit
 
2023
   
2022
 
Current provision (benefit):
           
Federal
 
$
892
   
$
16
 
State
   
181
     
41
 
Foreign
   
102
     
96
 
Related to UTP
   
(34
)
   
28
 
     
1,141
     
181
 
                 
Deferred provision (benefit):                
Federal
    (266 )     -  
State     (103 )     -  
Foreign     5       -  
      (364 )     -  
                 
Total tax provision (benefit)
  $ 777     $ 181  
Earnings occurring outside the U.S. are deemed to be indefinitely reinvested outside of the U.S. to support the Company’s foreign operations.  As a result, if the Company accumulates earnings overseas, they will be used for investment in the Company’s businesses outside the U.S.  The Company will use cash generated from U.S. operations and short- and long-term borrowings to meet the Company’s U.S. cash needs.  The determination of unrecognized deferred tax liabilities for temporary differences in investments in foreign subsidiaries is not practicable.

The Company has $0.7 million of state tax net operating loss (“NOL”) carryovers which will begin to expire in 2025.  We also have a full valuation allowance on $0.6 million of foreign tax NOL carryovers that do not expire.

Income before income taxes was earned in the following tax jurisdictions:

(in thousands)
 
Year Ended December 31,
 
Income (Loss) Before Income Taxes
 
2023
   
2022
 
United States
 
$
3,765
   
$
733
 
Spain
   
25
   
(83
)
Canada
   
755
     
758
TOTAL
 
$
4,545
   
$
1,408
 

The income tax effects of temporary differences that give rise to significant portions of deferred income tax assets and liabilities are as follows:

Deferred income tax assets:
 
2023
   
2022
 
(in thousands)
           
Inventory
 
$
412
   
$
471
 
Stock-based compensation
   
55
     
93
 
Accounts receivable
   
8
     
14
 
Sales returns
   
49
     
47
 
Foreign currency translation gain/loss in OCI
   
512
     
689
 
Net operating losses
   
182
     
261
 
Accrued expenses
   
170
     
63
 
Leases
   
108
     
152
 
Total deferred income tax assets
   
1,496
     
1,790
 
Less:  valuation allowance
   
(154
)
   
(1,151
)
Total deferred income tax assets, net of valuation allowance
 
$
1,342
   
$
639
 
                 
Property and equipment depreciation
 
$
471
   
$
639
 
Total deferred income tax liabilities
   
471
     
639
 
                 
Net deferred tax asset (liability)
 
$
871
   
$
-
 

We are required to reduce deferred tax assets by a valuation allowance if, based on the weight of the available evidence, it is more likely than not that all or a portion of a deferred tax asset will not be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences are deductible.

As of each reporting date, the Company considers new evidence, both positive and negative, that could affect its view of the future realization of deferred tax assets.   As of December 31, 2023, management determined that there is sufficient positive evidence to conclude that it is more likely than not that additional deferred taxes of $1.3 million are realizable.  We reduced the valuation allowance accordingly.

Our effective tax rate differs from the federal statutory rate primarily due to U.S. state income tax expense, the difference in tax rates for loss carryback periods, foreign income/loss positions, expenses that are nondeductible for tax purposes, the change in our valuation allowance associated with our deferred tax assets, and differences in tax rates.  Below is a reconciliation of our effective tax rate from the statutory rate:

   
Year Ended December 31,
 
    2023    
2022
 
Statutory rate – Federal U.S. income tax
   
21.0
%
   
21.0
%
State and local taxes
   
5.3
%
   
(0.6
)%
Permanent book/tax differences
   
2.4
%
   
11.3
%
Change in valuation allowance
   
(6.8
)%
   
(20.3
)%
Interest on Uncertain Tax Position
   
(0.8
)%
   
2.0
%
Income tax credits
    (2.3 )%     -  
Other, net
   
(1.7
)%
   
(0.5
)%
Effective rate
   
17.1
%
   
12.9
%
We file a consolidated U.S. income tax return as well as state tax returns on a consolidated, combined, or stand-alone basis, depending on the jurisdiction.  We are no longer subject to U.S. federal income tax examinations by tax authorities for years prior to the tax year ended December 2021.  Depending on the jurisdiction, we are no longer subject to state examinations by tax authorities for years prior to the December 2020 and December 2021 tax years. We file tax returns in a limited number of foreign jurisdictions.

A reconciliation of the beginning and ending amount of uncertain tax positions (“UTP”) is as follows:

 
2023
   
2022
 
UTP at beginning of the year
 
$
450
   
$
415
 
Gross (decrease) increase to tax positions in current period
   
(27
)
   
7
 
Interest expense
   
(35
)
    28  
UTP at end of year
 
$
388
   
$
450
 
8.  COMMITMENTS AND CONTINGENCIES

Legal Proceedings

We are periodically involved in various 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.

Delisting of the Company’s Common Stock

After discovery of the accounting matters described in previous Security and Exchange Commission filings and during our resulting financial restatement, the Company did not file its periodic financial reports with the SEC.  As a result, Nasdaq suspended trading of the Company’s stock in August 2020 and formally de-listed the stock from the Nasdaq markets in February 2021.  After being de-listed from Nasdaq, the Company’s stock traded in the Over The Counter Markets until September l, 2022, when Nasdaq again approved it for listing.  The Company’s stock currently trades on the Nasdaq Capital Market under the symbol TLF.

9.  SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK

Major Customers

Our revenues are derived from a diverse group of customers, from hobbyist crafters to small and large businesses across a wide variety of industries.  No single customer accounted for more than 0.5% of our consolidated revenues in 2023 or 2022, and sales to our five largest customers represented less than 2.0% of consolidated revenues in each of those years.  While we do not believe the loss of one of these customers would have a significant negative impact on our operations, we do believe the loss of several of these customers simultaneously or a substantial reduction in sales generated by them could temporarily affect our operating results.

Major Suppliers

We purchase merchandise and raw materials from nearly 150 suppliers from the United States and approximately 20 foreign countries.  In general, our 10 largest suppliers account for approximately 55% of our inventory purchases, and we had one supplier in 2023 who represented more than 10% of our purchases.

Credit Risk

Due to the large number of customers comprising our customer base, concentrations of credit risk with respect to customer receivables are limited. The top two customers as of December 31, 2023, and 2022, represented 8.0% and 10.0% of net accounts receivable balance, respectively. These top two customers were also current as of these same dates. We do not generally require collateral for accounts receivable, but we do perform periodic credit evaluations of our customers and believe the allowance for doubtful accounts is adequate.  It is our opinion that if any one or a group of customer receivable balances should be deemed uncollectable, it would not have a material adverse effect on our results of operations or financial condition.

We maintain a majority of our cash in marketable securities and bank deposit accounts that, at times, may exceed federally insured limits.  We have not experienced any losses in such accounts.  We believe we are not exposed to any significant credit risk on our cash and cash equivalents.

10.  STOCKHOLDERS’ EQUITY

Equity Compensation Plans

The Tandy Leather Factory, Inc. 2013 Restricted Stock Plan (the “2013 Plan”) 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 of our common stock for restricted stock unit (“RSU”) 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 through 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.  In June 2022, as part of their annual director compensation, certain of our non-employee directors were granted a total of 14,000 service-based RSUs under the 2013 Plan, which will vest ratably over the next four years provided that the participant is still on the board on the vesting date.

The Tandy Leather Factory, Inc. 2023 Incentive Stock Plan (the “2023 Plan”) was adopted by our Board of Directors in April 2023 and approved by our stockholders in June 2023.  The 2023 Plan initially reserved up to 1,000,000 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.  In June 2023, as part of their annual director compensation, certain of our non-employee directors were granted a total of 12,993 service-based RSUs under the 2023 Plan, which will vest ratably over the next four years, subject to each participant’s continues service on the board as of each vesting date.  In October 2023, the Company granted to Ms. Carr a total of 276,000 service-based RSUs under the 2023 Plan, which will vest ratably over the next three years, subject to Ms. Carr’s continued employment as of each vesting date.

In addition to grants under the Company’s equity compensation plans, in October 2018 we granted a total of 644,000 RSUs to the Company’s Chief Executive Officer (“CEO”), of which (i) 460,000 are service-based RSUs that vest ratably over a period of five years from the grant date based on our CEO’s continued employment in her role, (ii) 92,000 are performance-based RSUs that will vest if the Company’s operating income exceeds $12 million dollars two fiscal years in a row, and (iii) 92,000 are performance-based RSUs that will vest if the Company’s operating income exceeds $14 million dollars in one fiscal year.  As of December 31, 2023, the Company has concluded that the performance conditions related to these performance-based RSUs was not achieved, and as a result no compensation expense related to these performance-based RSUs has been recorded.

A summary of the activity for restricted stock and RSU awards is as follows:

  Shares   Weighted Average  
  (in thousands)   Share Price  
Balance, January 1, 2023
   
441
   
$
6.46
 
Granted
   
290
     
4.25
 
Forfeited
   
(2
)
   
5.00
 
Vested
   
(106
)
   
6.51
 
Balance, December 31, 2023
   
623
   
$
5.12
 

The Company’s stock-based compensation relates to restricted stock and RSU awards.  For these service-based awards, our stock-based compensation expense, included in operating expenses, was $0.8 million and $1.1 million in 2023 and 2022, respectively.

As of December 31, 2023, the Company has concluded it is not probable that the performance conditions related to the performance-based RSUs described above will be achieved, and as a result no compensation expense related to performance-based RSUs has been recorded.

As of December 31, 2023, there was unrecognized compensation cost related to non-vested, service-based awards of $1.4 million which will be recognized over 3.1 weighted average years in each of the following years:

Unrecognized Expense
 
2024
 

571
 
2025
   
468
 
2026
   
314
 
2027     7  
   
$
1,360
 

We issue shares from authorized shares upon the lapsing of vesting restrictions on restricted stock and RSUs.  In 2023 and 2022, we issued 108,796 and 140,277 shares, respectively net of shares withheld to pay participants’ income taxes, resulting from the vesting of restricted stock and RSUs.  We do not use cash to settle equity instruments issued under stock-based compensation awards.

Share Repurchase Program

On August 9, 2020, the Board of Directors approved a program to repurchase up to $5.0 million of its common stock between August 9, 2020 and July 31, 2022.  This program expired in July 2022.  On August 8, 2022, the Board of Directors approved a new program to repurchase up to $5.0 million of the Company’s common stock between that date and August 31, 2024.  As of December 31, 2022 and December 31, 2023, $5.0 million remained available for repurchase under this new program.

On April 11, 2022, we entered into an agreement with two institutional shareholders of the Company to repurchase 359,500 shares of our common stock, par value $0.0024 in a private transaction. The purchase price was $5.00 per share for a total of $1.8 million. The closing of the repurchases took place on April 22, 2022, and these shares were subsequently cancelled. Prior to the repurchase, the shares represented approximately 4.2% of our outstanding common stock.
The direct share repurchase transactions were separately authorized by our Board of Directors and did not reduce the remaining amount authorized to be repurchased under the plans described above.  In July 2022, the Company repurchased 600 shares of stock under the open market plan.

Report of Independent Registered Public Accounting Firm (PCAOB ID Number 410)

ITEM 9.
CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE
 
None.
 
ITEM 9A.
CONTROLS AND PROCEDURES
 
Evaluation of Disclosure Controls and Procedures
 
Our management, with the participation of our Chief Executive Officer (who serves as our principal executive officer and principal financial officer), evaluated the design and operation of our “disclosure controls and procedures” (as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended) as of the end of the period covered by this report.  Based upon their evaluation of these disclosure controls and procedures, our management, with the participation of our Chief Executive Officer, has concluded that the disclosure controls and procedures were effective as of the date of such evaluation in ensuring that information required to be disclosed in the reports that we file or submit under the Exchange Act is (1) recorded, processed, summarized and reported in a timely manner, and (2) accumulated and communicated to our management, including our principal executive and principal financial officers, as appropriate, to allow timely decisions regarding required disclosure.
 
Management’s Annual Report on Internal Control over Financial Reporting
 
Our management is responsible for establishing and maintaining adequate internal control over our financial reporting.  Our internal control system was designed to provide reasonable assurance to our management and our board of directors regarding the reliability of the preparation and fair presentation of our published financial statements.
 
All internal control systems, no matter how well designed, have inherent limitations.  Therefore, even those systems determined effective can provide only reasonable assurance with respect to financial statement preparation and presentation.
 
A material weakness is defined as a deficiency, or combination of deficiencies in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of our annual or interim financial statements will not be prevented or detected on a timely basis.
 
We assessed the effectiveness of our internal controls over financial reporting as of December 31, 2023.  In making this assessment, we used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commissions (COSO) in Internal Control – Integrated Framework. Based on our assessment, and until March 8, 2024, we believed that as of December 31, 2023, our internal control over financial reporting was effective based on those criteria.

However, on March 8, 2024, Weaver and Tidwell, L.L.P., our registered public accounting firm, informed us that they believe the following deficiencies in the Company’s internal control to be material weaknesses:
 
“The Company lacks key controls preventing and detecting errors from occurring regarding the accuracy and valuation of customer discounts given and selling prices which impact revenues. Such key controls should validate and review any customer discounts given and product pricing changes to ensure accuracy and appropriateness. In addition, the accuracy and completeness of the system-generated data and reports used and relied upon was not validated.”
 
This annual report does not include an attestation report of our registered public accounting firm regarding internal control over financial reporting.  Management’s report is not subject to attestation by our registered public accounting firm pursuant to rules of the Securities and Exchange Commission that permit us to provide only management’s report in this Annual Report on Form 10-K.
 
Notwithstanding this identified material weakness, our registered public accounting firm has issued an unqualified opinion on our consolidated financial statements of and for the year ended December 31, 2023. And our management has been unable to measure any impact of this material weakness on the Company’s financial reporting.
 
We have subsequently put controls into place to address the issue described above, including a number of procedures designed as preventative controls to validate customers into various classes that are eligible to receive certain discounts, and contemporaneous confirmation and testing that pricing, discounts, customer-based price lists and negotiated prices in our ERP system are as intended by management.   We also have implemented monthly and quarterly detective controls including testing representative samples of retail prices, promoted prices, discounts, customer-based price lists and negotiated prices that were actually paid by customers to confirm that they were as management intended.  We have tested these controls for January, February, and March 2024 and based on the test sample, found no material errors related to our discounts or pricing.
 
ITEM 9B.  OTHER INFORMATION

None.

PART III
 
ITEM 10.
DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE*
 
ITEM 11.
EXECUTIVE COMPENSATION*
 
ITEM 12.
SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS*
 
ITEM 13.
CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE*
 
ITEM 14.
PRINCIPAL ACCOUNTANT FEES AND SERVICES*
 
* The information required by Items 10, 11, 12, 13, and 14 is or will be set forth in the definitive proxy statement relating to the 2024 Annual Meeting of Stockholders of Tandy Leather Factory, Inc., which is to be filed with the Securities and Exchange Commission pursuant to Regulation 14A under the Securities Exchange Act of 1934, as amended.  This definitive proxy statement relates to a meeting of stockholders involving the election of directors and the portions therefrom required to be set forth in this Form 10-K by Items 10, 11, 12, 13, and 14 are incorporated herein by reference pursuant to General Instruction G(3) to Form 10-K.
 
PART IV
 
ITEM 15.
EXHIBITS, FINANCIAL STATEMENT SCHEDULES
 
(a)
The following are filed as part of this Form 10-K:
 
1.  Financial Statements
 
The following Consolidated Financial Statements are included in Item 8, Financial Statements and Supplementary Data:
 
Report of Independent Registered Public Accounting Firm (PCAOB ID Number 410)
 
Consolidated Balance Sheets as of December 31, 2023 and 2022
 
Consolidated Statements of Operations and Comprehensive Income for the years ended December 31, 2023 and 2022
 
Consolidated Statements of Cash Flows for the years ended December 31, 2023 and 2022
 
Consolidated Statements of Stockholders’ Equity for the years ended December 31, 2023 and 2022
 
2.  Financial Statement Schedules
 
All financial statement schedules are omitted because the required information is not present or not present in sufficient amounts to require submission of the schedule or because the information is reflected in the Consolidated Financial Statements or notes thereto.
 
3.  Exhibits
 
 
TANDY LEATHER FACTORY, INC. AND SUBSIDIARIES
EXHIBIT INDEX
Exhibit
Number
Description
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.’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on August 12, 2005 and incorporated by reference herein.
   
Bylaws of Tandy Leather Factory, Inc., filed as Exhibit 3.1 to Tandy Leather Factory, Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on December 8, 2021 and incorporated by reference herein.
   
Certificate of Designations of Series A Junior Participating Preferred Stock of Tandy Leather Factory, Inc. filed as Exhibit 3.1 to Tandy Leather Factory, Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on June 10, 2013 and incorporated by reference herein.


3.4
Certificate of Amendment of Certificate of Incorporation of Tandy Leather Factory, Inc. dated March 1, 2023, filed as Exhibit 3.4 to Tandy Leather Factory, Inc.’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 31, 2023.
   
Description of Securities filed as Exhibit 4.1 to Tandy Leather Factory, Inc.’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on June 22, 2021 and incorporated by reference herein.
   
Tandy Leather Factory, Inc. 2013 Restricted Stock Plan, filed as Exhibit 10.1 to Tandy Leather Factory’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on November 14, 2013 and incorporated by reference herein.
   
Amendment #1 to Tandy Leather Factory, Inc. 2013 Restricted Stock Plan filed as Exhibit 10.5 to Tandy Leather Factory, Inc.’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on June 22, 2021 and incorporated by reference herein.

Form of Non-Employee Director Restricted Stock Agreement under Tandy Leather Factory, Inc.’s 2013 Restricted Stock Plan, filed as Exhibit 10.1 to Tandy Leather Factory, Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on February 14, 2014 and incorporated by reference herein.
   
Form of Employee Restricted Stock Award Agreement under Tandy Leather Factory, Inc.’s 2013 Restricted Stock Plan, filed as Exhibit 10.7 to Tandy Leather Factory, Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on February 14, 2014 and incorporated by reference herein.
   
Form of Employment Agreement dated October 2, 2018 between the Company and Janet Carr, filed as Exhibit 10.1 to Tandy Leather Factory Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on October 5, 2018 and incorporated by reference herein.
   
Form of Stand-Alone Restricted Stock Unit Agreement dated October 2, 2018 between the Company and Janet Carr, filed as Exhibit 10.2 to Tandy Leather Factory Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on October 5, 2018 and incorporated by reference herein.
   
Form of Stand-Alone Restricted Stock Unit Agreement dated October 2, 2018 between the Company and Janet Carr, filed as Exhibit 10.3 to Tandy Leather Factory Inc.’s Current Report on Form 8-K filed with the Securities and Exchange Commission on October 5, 2018 and incorporated by reference herein.
   
Credit Agreement dated October 26, 2022 between the Company and JP Morgan Chase Bank, N.A., filed as Exhibit 10.8 to Tandy Leather Factory, Inc.’s Annual Report on Form 10-K filed with the Securities and Exchange Commission on March 31, 2023
   
Tandy Leather Factory, Inc. 2023 Incentive Stock Plan, filed as Exhibit 10.10 to Tandy Leather Factory, Inc.’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on August 14, 2023
   
Code of Business Conduct and Ethics of Tandy Leather Factory, Inc., adopted by the Board of Directors on December 4, 2018, filed as Exhibit 14.1 to Tandy Leather Factory, Inc.’s Quarterly Report on Form 10-Q filed with the Securities and Exchange Commission on June 22, 2021 and incorporated by reference herein.

Subsidiaries of Tandy Leather Factory, Inc.
   
Consent of Independent Registered Public Accounting Firm.
   
Certification by the Chief Executive Officer and President pursuant to Rule 13a-14(a) or 15d-14(a) under the Securities Exchange Act of 1934, as amended.
 
Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.
   
*101.INS
XBRL Instance Document.
   
*101.SCH
XBRL Taxonomy Extension Schema Document.
   
*101.CAL
XBRL Taxonomy Extension Calculation Document.
   
*101.DEF
XBRL Taxonomy Extension Definition Document.
   
*101.LAB
XBRL Taxonomy Extension Labels Document.
   
*101.PRE
XBRL Taxonomy Extension Presentation Document.
 


   *Filed Herewith
 
ITEM 16.
FORM 10-K SUMMARY
 
None.
 
SIGNATURES
 
Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, as amended, the Registrant has duly caused this Form 10-K to be signed on its behalf by the undersigned, thereunto duly authorized.
 

TANDY LEATHER FACTORY, INC.

 
  By:
/s/ Janet Carr
   
Janet Carr
   
Chief Executive Officer
   
Dated:  March 22, 2024
 

Pursuant to the requirements of the Securities Exchange Act of 1934 as amended, this Report has been signed below by the following persons on behalf of the registrant and in the capacities and on the dates indicated.

Signature
Title
Date
     
/s/ Jefferson Gramm
Chairman of the Board 
March 22, 2024
Jefferson Gramm
   
     
/s/ Janet Carr
Chief Executive Officer, Director
March 22, 2024
Janet Carr 
(principal executive officer)
 
     
/s/ Eric Speron
Director
March 22, 2024
Eric Speron
   
     
/s/ James Pappas
Director
March 22, 2024
James Pappas
   
     
/s/ Vicki Cantrell
Director
March 22, 2024
Vicki Cantrell
   
     
/s/ Sejal Patel
Director
March 22, 2024
Sejal Patel
   
     
/s/ Elaine D. Crowley
Director
March 22, 2024
Elaine D. Crowley
   


60

EX-21.1 2 ef20015300_ex21-1.htm EXHIBIT 21.1
EXHIBIT 21.1

LIST OF THE SUBSIDIARIES OF THE COMPANY
 
The Leather Factory, Inc., a Nevada corporation
 
The Leather Factory of Nevada Investments, Inc., a Nevada corporation
 
The Leather Factory, LP, a Texas limited partnership
 
The Leather Factory, Inc., an Arizona corporation
 
Hi-Line Leather & Manufacturing Company, a California corporation
 
Roberts, Cushman & Company, Inc., a New York corporation
 
The Leather Factory of Canada Ltd., an Ontario domiciled Canadian corporation
 
Tandy Leather Company, Inc., a Nevada corporation
 
Tandy Leather Company Investments, Inc. a Nevada corporation
 
Tandy Leather Company, LP, a Texas limited partnership
 
Tandy Leather Factory Espana, S.L., a Spanish limited liability company
 


EX-23.1 3 ef20015300_ex23-1.htm EXHIBIT 23.1
EXHIBIT 23.1
 

Consent of Independent Registered Public Accounting Firm

We hereby consent to the incorporation by reference in the Registration Statement on Form S-8 No. 333-190389 of Tandy Leather Factory, Inc. of our report dated March 22, 2024, relating to the consolidated financial statements, which appear in this Form 10-K.
 

/s/ WEAVER AND TIDWELL, L.L.P.

Oklahoma City, Oklahoma
 
March 22, 2024



Weaver and Tidwell, L.L.P.
499 West Sheridan Avenue, Suite 2450 | Oklahoma City, OK 73102
Main: 405.594.9200
CPAs AND ADVISORS | WEAVER.COM

EX-31.1 4 ef20015300_ex31-1.htm EXHIBIT 31.1
EXHIBIT 31.1
 
Certification of Chief Executive Officer and Principal Financial Officer
 
Section 302 Certification
I, Janet Carr, certify that:
 
I have reviewed this annual report on Form 10-K of Tandy Leather Factory, Inc.;
 
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;
 
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;
 
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:
 
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;
 
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;
 
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
 
Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
 
The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
 
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’s ability to record, process, summarize and report financial information; and
 
Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
 
Date:  March 22, 2024
/s/ Janet Carr
 
 
 
Janet Carr
 
Chief Executive Officer
 
(principal executive officer and principal financial officer)



EX-32.1 5 ef20015300_ex32-1.htm EXHIBIT 32.1

EXHIBIT 32.1
 
Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to
 
Section 906 of the Sarbanes-Oxley Act of 2002
 
In connection with the annual report on Form 10-K of Tandy Leather Factory, Inc. (the “Company”) for the fiscal year ended December 31, 2023 as filed with the United States Securities and Exchange Commission on the date hereof (the “Report”), each of the undersigned officers of the Company certifies, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:
 
The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934, as amended; and
 
The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
 
Date:  March 22, 2024
By:  /s/ Janet Carr
 
Janet Carr
 
 
 
Chief Executive Officer
 
(principal executive officer and principal financial officer)
 


EX-101.SCH 6 tlfa-20231231.xsd XBRL TAXONOMY EXTENSION SCHEMA 000100 - Document - Document and Entity Information link:presentationLink link:calculationLink link:definitionLink 010000 - Statement - Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 010100 - Statement - Consolidated Balance Sheets (Parentheticals) link:presentationLink link:calculationLink link:definitionLink 020000 - Statement - Consolidated Statements of Operations and Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 030000 - Statement - Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 040000 - Statement - Condensed Consolidated Statements of Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 060100 - Disclosure - DESCRIPTION OF BUSINESS link:presentationLink link:calculationLink link:definitionLink 060200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES link:presentationLink link:calculationLink link:definitionLink 060300 - Disclosure - BALANCE SHEET COMPONENTS link:presentationLink link:calculationLink link:definitionLink 060400 - Disclosure - LEASES link:presentationLink link:calculationLink link:definitionLink 060500 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT link:presentationLink link:calculationLink link:definitionLink 060600 - Disclosure - EMPLOYEE BENEFIT AND SAVINGS PLANS link:presentationLink link:calculationLink link:definitionLink 060700 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 060800 - Disclosure - COMMITMENTS AND CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 060900 - Disclosure - SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK link:presentationLink link:calculationLink link:definitionLink 061000 - Disclosure - STOCKHOLDERS' EQUITY link:presentationLink link:calculationLink link:definitionLink 061100 - Disclosure - Insider Trading Arrangements link:presentationLink link:calculationLink link:definitionLink 070200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) link:presentationLink link:calculationLink link:definitionLink 080200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables) link:presentationLink link:calculationLink link:definitionLink 080300 - Disclosure - BALANCE SHEET COMPONENTS (Tables) link:presentationLink link:calculationLink link:definitionLink 080400 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 080700 - Disclosure - INCOME TAXES (Tables) link:presentationLink link:calculationLink link:definitionLink 081000 - Disclosure - STOCKHOLDERS' EQUITY (Tables) link:presentationLink link:calculationLink link:definitionLink 090100 - Disclosure - DESCRIPTION OF BUSINESS (Details) link:presentationLink link:calculationLink link:definitionLink 090200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Deconsolidation of Foreign Subsidiaries (Details) link:presentationLink link:calculationLink link:definitionLink 090202 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Error Correction (Details) link:presentationLink link:calculationLink link:definitionLink 090204 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 090206 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Foreign Currency Translation and Transactions (Details) link:presentationLink link:calculationLink link:definitionLink 090208 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details) link:presentationLink link:calculationLink link:definitionLink 090210 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details) link:presentationLink link:calculationLink link:definitionLink 090212 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details) link:presentationLink link:calculationLink link:definitionLink 090214 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Leases (Details) link:presentationLink link:calculationLink link:definitionLink 090216 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Impairment of Long-lived Assets (Details) link:presentationLink link:calculationLink link:definitionLink 090218 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Earnings Per Share (Details) link:presentationLink link:calculationLink link:definitionLink 090220 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 090222 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 090224 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Shipping and Handling Costs (Details) link:presentationLink link:calculationLink link:definitionLink 090226 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Advertising (Details) link:presentationLink link:calculationLink link:definitionLink 090300 - Disclosure - BALANCE SHEET COMPONENTS, Inventory, Property and Equipment (Details) link:presentationLink link:calculationLink link:definitionLink 090302 - Disclosure - BALANCE SHEET COMPONENTS, Short-term Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 090400 - Disclosure - LEASES, Lease Assets, Liabilities and Lease Cost (Details) link:presentationLink link:calculationLink link:definitionLink 090402 - Disclosure - LEASES, Maturity of Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 090404 - Disclosure - LEASES, Maturity of Lease Liabilities (Details) CALC 01 link:presentationLink link:calculationLink link:definitionLink 090404 - Disclosure - LEASES, Operating Leases Other Information (Details) link:presentationLink link:calculationLink link:definitionLink 090406 - Disclosure - LEASES, Lease Term and Discount Rate (Details) link:presentationLink link:calculationLink link:definitionLink 090500 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT (Details) link:presentationLink link:calculationLink link:definitionLink 090600 - Disclosure - EMPLOYEE BENEFIT AND SAVINGS PLANS (Details) link:presentationLink link:calculationLink link:definitionLink 090700 - Disclosure - INCOME TAXES, Provision for Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 090702 - Disclosure - INCOME TAXES, Income Before Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 090704 - Disclosure - INCOME TAXES, Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 090706 - Disclosure - INCOME TAXES, Reconciliation of Effective Tax Rate from Statutory Rate (Details) link:presentationLink link:calculationLink link:definitionLink 090708 - Disclosure - INCOME TAXES, Reconciliation of Uncertain Tax Positions (Details) link:presentationLink link:calculationLink link:definitionLink 090900 - Disclosure - SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK (Details) link:presentationLink link:calculationLink link:definitionLink 091000 - Disclosure - STOCKHOLDERS' EQUITY, 2013 and 2023 Restricted Stock Plans (Details) link:presentationLink link:calculationLink link:definitionLink 091002 - Disclosure - STOCKHOLDERS' EQUITY, Summary of Activity for Restricted Stock and RSU Awards (Details) link:presentationLink link:calculationLink link:definitionLink 091004 - Disclosure - STOCKHOLDERS' EQUITY, Non-vested Service-based Awards (Details) link:presentationLink link:calculationLink link:definitionLink 091006 - Disclosure - STOCKHOLDERS' EQUITY, Share Repurchase Program (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 tlfa-20231231_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.DEF 8 tlfa-20231231_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE EX-101.LAB 9 tlfa-20231231_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE Insider Trading Arrangements [Line Items] Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Accounts receivable-trade, net of allowance for doubtful accounts of $31 and $56 at December 31, 2023 and December 31, 2022, respectively Accounts receivable Accumulated amortization Finite-Lived Intangible Assets, Accumulated Amortization Accumulated other comprehensive loss, net of tax Less accumulated depreciation Less: accumulated depreciation Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Paid-in capital Depreciation expense Advertising expense Advertising Allowance for doubtful accounts Accounts Receivable, Allowance for Credit Loss, Current Amortization of intangible assets (excluding goodwill) Amortization of Intangible Assets Restricted Stock [Member] Impairment of long-lived assets [Abstract] Condensed Consolidated Balance Sheets [Abstract] Basic (in dollars per share) Earnings Per Share, Basic Building [Member] Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Cash and cash equivalents Interest paid during the period Accounts receivable-trade Increase (Decrease) in Accounts Receivable Inventory Increase (Decrease) in Inventories Prepaid expenses Increase (Decrease) in Prepaid Expense Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Accounts payable-trade Increase (Decrease) in Accounts Payable Accrued expenses and other liabilities Increase (Decrease) in Accrued Liabilities COMMITMENTS AND CONTINGENCIES Commitments and Contingencies Disclosure [Text Block] Common stock, shares authorized (in shares) Common stock, shares issued (in shares) Common stock, shares outstanding (in shares) Common stock, $0.0024 par value; 25,000,000 shares authorized; 9,823,621 and 9,717,525 shares issued at December 31, 2023 and December 31, 2022, respectively; 8,399,245 and 8,293,150 shares outstanding at December 31, 2023 and December 31, 2022, respectively SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK Concentration Risk Type [Axis] Concentration Risk [Line Items] Concentration Risk [Table] Concentration Risk Type [Domain] Cost of sales Depreciation and amortization Federal Foreign Total current provision Current Income Tax Expense (Benefit) Total current liabilities Liabilities, Current CURRENT LIABILITIES: State Customer Concentration Risk [Member] NOTES PAYABLE AND LONG-TERM DEBT Debt Instrument, Name [Domain] Debt Instruments [Abstract] Debt Instrument [Axis] Debt Instrument [Line Items] Schedule of Long-term Debt Instruments [Table] Federal Deferred Federal Income Tax Expense (Benefit) Foreign Deferred Foreign Income Tax Expense (Benefit) Total deferred provision (benefit) Deferred Income Tax Expense (Benefit) Total deferred income tax liabilities Deferred Tax Liabilities, Gross State Deferred State and Local Income Tax Expense (Benefit) Deferred income tax assets [Abstract] Total deferred income tax assets Deferred Tax Assets, Gross Inventory Deferred Tax Assets, Inventory Net deferred tax asset (liability) Deferred Tax Assets, Net Total deferred income tax assets, net of valuation allowance Deferred Tax Assets, Net of Valuation Allowance Net operating losses Foreign tax net operating loss carryovers Deferred Tax Assets, Operating Loss Carryforwards, Foreign State net operating loss carryovers Deferred Tax Assets, Operating Loss Carryforwards, State and Local Stock-based compensation Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost Accrued expenses Leases Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Deferred Rent Sales returns Foreign currency translation gain/loss in OCI Deferred Tax Assets, Unrealized Currency Losses Less: valuation allowance Deferred Tax Assets, Valuation Allowance Deferred income tax liabilities [Abstract] Defined contribution plan, employer match expense Diluted (in dollars per share) Principles of consolidation Income (loss) before income taxes Income (Loss) from Continuing Operations before Income Taxes, Domestic Income (loss) before income taxes Income (Loss) from Continuing Operations before Income Taxes, Foreign Effective rate Effective Income Tax Rate Reconciliation, Percent Change in valuation allowance Statutory rate - Federal U.S. income tax Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent Other, net Effective Income Tax Rate Reconciliation, Other Adjustments, Percent State and local taxes Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent Income tax credits Effective Income Tax Rate Reconciliation, Tax Credit, Percent Stock-based compensation expense Share-Based Payment Arrangement, Expense Stock-based compensation Share-based Compensation Expense [Abstract] Error Corrections and Prior Period Adjustments Restatement [Line Items] Schedule of Error Corrections and Prior Period Adjustment Restatement [Table] Fair value of financial instruments Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets [Line Items] Foreign currency translation and transactions Furniture and Fixtures [Member] Other intangible assets Gross profit Gross Profit Impairment losses Impairment, Long-Lived Asset, Held-for-Use Impairment of long-lived assets Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block] Condensed Consolidated Statements of Operations and Comprehensive Income [Abstract] INCOME TAXES Income Tax Disclosure [Text Block] Income taxes Income tax paid (refunded) during the period, net Income tax receivable Shares excluded from the diluted EPS calculation (in shares) Incremental Common Shares Attributable to Dilutive Effect of Contingently Issuable Shares Dilutive effect of service-based restricted stock awards granted (in shares) Other Intangible Assets [Abstract] Related to UTP Unrecognized Tax Benefits, Interest on Income Taxes Expense Finished goods held for sale Inventory Total inventory Inventory on hand [Abstract] Inventory in transit Inventory Inventory, Policy [Policy Text Block] Land [Member] Leasehold Improvements [Member] Liabilities [Abstract] TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY Liabilities and Equity LIABILITIES AND STOCKHOLDERS' EQUITY Line of Credit Facility, Lender [Domain] Line of credit facility, maximum borrowing capacity Lender Name [Axis] Equipment and Machinery [Member] Net cash used in financing activities Net Cash Provided by (Used in) Financing Activities Cash flows from financing activities: Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Cash flows from investing activities: Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Cash flows from operating activities: Net Income Net income Net income Net Income (Loss) Attributable to Parent Interest income Interest Income (Expense), Net Total other income Nonoperating Income (Expense) Advertising [Abstract] Marketing and Advertising Expense [Abstract] Income from operations Operating Income (Loss) Other income: Other current assets Other, net Other Nonoperating Income (Expense) Pension and Other Postretirement Benefits Cost [Abstract] EMPLOYEE BENEFIT AND SAVINGS PLANS Defined Benefit Plan Disclosure [Line Items] Prepaid expenses Line of credit facility, funds borrowed Proceeds from long-term debt Proceeds from sales of assets Proceeds from Sale of Productive Assets Property and equipment, at cost Property and equipment, gross Property and equipment, net Property, Plant and Equipment, Net Property and equipment, net of accumulated depreciation Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment Reconciliation of Uncertain Tax Positions ("UTP") [Roll Forward] Payments on long-term debt Repayments of Long-Term Debt Repurchase of common stock Payments for Repurchase of Common Stock Retained earnings Segment Reporting Information [Line Items] Schedule of Segment Reporting Information, by Segment [Table] Forfeited (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period Number of restricted stock units granted (in shares) Granted (in shares) Granted (in dollars per share) Balance (in shares) Balance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number Balance (in dollars per share) Balance (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Unrecognized Expense Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Vested (in dollars per share) Award Type [Domain] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Supplier [Domain] Supplier [Axis] SIGNIFICANT ACCOUNTING POLICIES Condensed Consolidated Statements of Cash Flows [Abstract] Condensed Consolidated Statements of Stockholders' Equity [Abstract] Stock-based compensation Share-Based Payment Arrangement [Policy Text Block] STOCKHOLDERS' EQUITY: Restricted Stock Plan [Abstract] Stockholders' Equity Note [Abstract] STOCKHOLDERS' EQUITY Supplemental disclosures of cash flow information: Supplier Concentration Risk [Member] Total current assets Assets, Current CURRENT ASSETS: UTP at end of year UTP at beginning of the year Unrecognized Tax Benefits Gross decrease to tax positions in current period Unrecognized Tax Benefits, Decrease Resulting from Current Period Tax Positions Gross increase to tax positions in current period Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions Vehicles [Member] Diluted (in shares) Diluted weighted-average common shares outstanding (in shares) Basic (in shares) Basic weighted-average common shares outstanding (in shares) Raw materials and work in process Inventory, Work in Process and Raw Materials Common Stock [Member] Long-Lived Tangible Asset [Domain] Buildings and Related Improvements [Member] Property and equipment, net of accumulated depreciation [Abstract] Property, Plant and Equipment, Net [Abstract] TOTAL ASSETS Assets Allowance for expected credit losses Accounts, Notes, Loans and Financing Receivable [Line Items] Other non-current liabilities Other Liabilities, Noncurrent Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Prior Period Adjustments [Abstract] Statement [Table] ASSETS Assets [Abstract] Statement [Line Items] Computation of Earnings Per Share [Abstract] Transfers into (out of) Level 3 STOCKHOLDERS' EQUITY [Abstract] SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK [Abstract] United States [Member] Increase (Decrease) in Stockholders' Equity [Roll Forward] Property and Equipment [Abstract] Class of Treasury Stock [Table] Equity, Class of Treasury Stock [Line Items] Income taxes, net Increase (Decrease) in Deferred Income Taxes Credit card payments recorded as deferred revenue Other assets Net income per common share: Earnings Per Share [Abstract] Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table] Earnings per share Earnings Per Share, Policy [Policy Text Block] Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] Deferred income taxes Deferred Income Taxes and Tax Credits Property, Plant and Equipment [Table] Common stock, par value (in dollars per share) Long-Lived Tangible Asset [Axis] Property, Plant and Equipment [Line Items] Number of common shares reserved for issuance (in shares) Common Stock, Capital Shares Reserved for Future Issuance Income (loss) before income taxes [Abstract] Operating expenses Operating expenses Operating Costs and Expenses Balance Balance Total stockholders' equity Equity, Attributable to Parent Property and equipment depreciation Deferred Tax Liabilities, Property, Plant and Equipment Provision for income taxes Total tax provision (benefit) Foreign currency translation and transactions [Abstract] Gain (Loss), Foreign Currency Transaction, before Tax [Abstract] Accounts Receivable [Member] Accounts Payable [Member] Equity Components [Axis] Paid-in Capital [Member] Retained Earnings [Member] Accumulated Other Comprehensive Income (Loss) [Member] Equity Component [Domain] Operating expense Selling, General and Administrative Expenses, Policy [Policy Text Block] Issuance of restricted stock Repurchase of common stock Purchase price Issuance of restricted stock (in shares) Number of shares issued from vesting of restricted stock (in shares) Repurchase of common stock (in shares) Repurchase of common stock (in shares) Uncertain tax positions Liability for Uncertainty in Income Taxes, Noncurrent Supplemental disclosures of non-cash activity: Shares [Roll Forward] Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Weighted average number of shares outstanding: Denominator [Abstract] Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Comprehensive income Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest LEASES [Abstract] Leases [Abstract] COMMITMENTS AND CONTINGENCIES (Note 8) Commitments and Contingencies Loss on deconsolidation Adjustments to reconcile net income to net cash provided by operating activities: Total adjustments Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities Accounts payable-trade Accounts Payable Accrued employee related costs Income taxes payable Stock-based compensation expense APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Numerator [Abstract] Income before income taxes TOTAL Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Purchase of vested stock for employee payroll tax Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation Product Information [Line Items] Number of stores Number of Stores Schedule of Product Information [Table] Purchase of vested stock for employee payroll tax (in shares) Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation DESCRIPTION OF BUSINESS BALANCE SHEET COMPONENTS [Abstract] DESCRIPTION OF BUSINESS [Abstract] Balance (in shares) Balance (in shares) Shares, Outstanding Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities Provision for Income Taxes Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Reconciliation of Effective Tax Rate from Statutory Rate Income Before Income Taxes COMMITMENTS AND CONTINGENCIES [Abstract] INCOME TAXES [Abstract] Inventory [Abstract] NOTES PAYABLE AND LONG-TERM DEBT [Abstract] EMPLOYEE BENEFIT AND SAVINGS PLANS [Abstract] Non-vested, Service-based Stock Awards Management estimates and reporting Correction of an error in previously issued financial statements Restricted Stock Units [Member] SIGNIFICANT ACCOUNTING POLICIES [Abstract] Accounting Standards Update [Domain] BALANCE SHEET COMPONENTS Other current assets Increase (Decrease) in Other Current Assets Other assets Increase (Decrease) in Other Noncurrent Assets Computation of Basic and Diluted Earnings Per Share Activity of Restricted Stock and RSU Awards Accounting Standards Update [Axis] Employer matching contribution, percentage of eligible earnings contributed by employees Employer discretionary contribution amount Schedule of Finite-Lived Intangible Assets [Table] Weighted Average Share Price [Abstract] Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Forfeited (in dollars per share) Purchase price per share (in dollars per share) Comprehensive income Comprehensive Income, Policy [Policy Text Block] Balance Sheet Location [Axis] Share Repurchase Program [Axis] Share Repurchase Program [Domain] Plan Name [Axis] Plan Name [Domain] Award Type [Axis] Income Statement Location [Axis] Income Statement Location [Domain] Weighted average amortization period Recently Adopted Accounting Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Accrued Expenses and Other Liabilities [Abstract] TOTAL Accrued expenses and other liabilities Estimated useful lives of assets Amortization expense, 2024 Amortization expense, 2025 Amortization expense, 2026 Amortization expense, 2027 Amortization expense, 2028 Vesting period from grant date Unrecognized compensation cost period of recognition Number of operating segments Number of Operating Segments Number of reporting segments Reconciliation of Uncertain Tax Positions Concentration risk percentage Foreign currency translation gain (loss), net Foreign currency translation adjustments, net of tax Foreign currency translation loss adjustments net of tax change (benefit) Balance Sheet Location [Domain] Other Liabilities [Member] Interest Expense [Member] Operating Expenses [Member] Operating Expense [Member] Trademarks/Copyrights [Member] Intellectual Property [Member] Accounts Expenses and Other Liabilities [Member] Sales Revenue [Member] Loss on disposal of assets Gain (Loss) on Disposition of Assets Vesting [Axis] Vesting [Domain] Accounts receivable and expected credit losses Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block] Employer matching contribution, percentage of match Tranche One [Member] Share-Based Payment Arrangement, Tranche One [Member] Tranche Two [Member] Share-Based Payment Arrangement, Tranche Two [Member] Income Tax Authority [Axis] Income Tax Authority [Domain] Canada [Member] Spain [Member] Repurchase of common stock shares Remaining repurchase of common stock Defined Contribution Plan [Table] Deferred income taxes Deferred Income Tax Assets, Net Deferred income taxes Current provision (benefit) [Abstract] Deferred provision (benefit) [Abstract] Foreign Countries [Member] Treasury Stock [Member] Treasury stock, shares (in shares) Treasury stock at cost (1,424,376 shares at December 31, 2023 and December 31, 2022) Treasury Stock, Common, Value ASU 2016-02 [Member] Accounting Standards Update 2016-02 [Member] Lease Cost [Abstract] Total lease cost Operating lease cost Short-term lease cost Variable lease cost Maturities of Finance Lease Liabilities [Abstract] Finance Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract] Disaggregated revenue [Abstract] Disaggregated Revenue Disaggregation of Revenue [Table] Disaggregation of Revenue [Line Items] Sales return allowance Contract with Customer, Asset, Allowance for Credit Loss Revenue recognized from redemption of gift cards Contract with Customer, Liability, Revenue Recognized Revenue recognition [Abstract] Revenue from Contract with Customer [Abstract] Contract with customer liability Contract with Customer, Liability Financing lease assets Operating lease assets Operating lease assets Maturity of Operating Lease Liabilities [Abstract] Net sales Sales Retirement Plan Type [Axis] Retirement Plan Type [Domain] Lessee, Lease, Description [Table] Lessee, Lease, Description [Line Items] Effect of exchange rate changes on cash and cash equivalents Net increase (decrease) in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Cash and cash equivalents, beginning of period Cash and cash equivalents, end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Operating cash flows used in operating leases Payment of finance lease obligations Financing cash flows used in finance leases Finance Lease, Principal Payments Finance leases Finance Lease, Weighted Average Discount Rate, Percent Operating leases Operating Lease, Weighted Average Discount Rate, Percent Total lease payments Lessee, Operating Lease, Liability, to be Paid Thereafter Lessee, Operating Lease, Liability, to be Paid, after Year Five 2024 Lessee, Operating Lease, Liability, to be Paid, Year One 2028 Lessee, Operating Lease, Liability, to be Paid, Year Five 2027 Lessee, Operating Lease, Liability, to be Paid, Year Four 2026 Lessee, Operating Lease, Liability, to be Paid, Year Three 2025 Lessee, Operating Lease, Liability, to be Paid, Year Two Maturity of Lease Liabilities Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Amortization of finance lease assets Finance Lease, Right-of-Use Asset, Amortization Present value of lease liabilities Finance Lease, Liability Current portion of finance lease liabilities Less: Interest Finance Lease, Liability, Undiscounted Excess Amount Finance lease liabilities, non-current Total lease payments Finance Lease, Liability, to be Paid Thereafter Finance Lease, Liability, to be Paid, after Year Five 2024 Finance Lease, Liability, to be Paid, Year One 2028 Finance Lease, Liability, to be Paid, Year Five 2027 Finance Lease, Liability, to be Paid, Year Four 2026 Finance Lease, Liability, to be Paid, Year Three 2025 Finance Lease, Liability, to be Paid, Year Two Operating lease asset impairment expense Operating Lease, Impairment Loss Interest on lease liabilities Remaining finance leases interest expense Operating cash flows used in finance leases Finance Lease, Interest Payment on Liability Present value of lease liabilities Operating Lease, Liability Current portion of operating lease liabilities Operating Lease, Liability, Current Less: Interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Operating lease liabilities, non-current Operating Lease, Liability, Noncurrent Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration] Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration] Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Lease Cost Leases Lessee, Leases [Policy Text Block] LEASES Finance leases Finance Lease, Weighted Average Remaining Lease Term Operating leases Operating Lease, Weighted Average Remaining Lease Term Revenue recognition Shipping and Handling [Member] Employees [Member] Share-Based Payment Arrangement, Employee [Member] Operating lease asset amortization Operating lease liabilities Increase (Decrease) in Operating Lease Liability Title of Individual [Domain] Customer [Domain] Non-Employee Director [Member] Board of Directors [Member] Chief Executive Officer [Member] Geographical [Domain] Geographical [Axis] Customer [Axis] Statistical Measurement [Axis] Statistical Measurement [Domain] Maximum [Member] Minimum [Member] Inventory, Property and Equipment and Short-term Liabilities Title of Individual [Axis] Product and Service [Domain] Product and Service [Axis] Revision of Prior Period [Axis] Revision of Prior Period [Domain] Prior Period Adjustment [Member] Canada [Member] CANADA Spain [Member] SPAIN United States [Member] UNITED STATES Cover [Abstract] Document Type Document Annual Report Document Transition Report Document Financial Statement Error Correction [Flag] Document Financial Statement Restatement Recovery Analysis [Flag] Entity Interactive Data Current Amendment Flag ICFR Auditor Attestation Flag Document Fiscal Year Focus Document Fiscal Period Focus Document Period End Date Entity Registrant Name Entity Central Index Key Entity File Number Entity Tax Identification Number Entity Incorporation, State or Country Code Current Fiscal Year End Date Entity Well-known Seasoned Issuer Entity Voluntary Filers Entity Current Reporting Status Entity Shell Company Entity Filer Category Entity Small Business Entity Emerging Growth Company Entity Public Float Entity Address, Address Line One Entity Address, City or Town Entity Address, State or Province Entity Address, Postal Zip Code City Area Code Local Phone Number Title of 12(b) Security Trading Symbol Security Exchange Name Entity Common Stock, Shares Outstanding Auditor Name Auditor Location Auditor Firm ID Represents the carrying value as of the balance sheet date of the liability for expected merchandise returns. Expected Merchandise Returns Estimated returns The name of lender will provide the line of credit facility under the credit agreement. JP Morgan Chase Bank, N.A. [Member] A loan provided for by the Spanish government as part of a COVID-19 relief program to facilitate the continuation of employment and to attenuate the economic effects of the COVID-19 virus. Institute of Official Credit Guarantee for Small and Medium-sized Enterprises [Member] Institute of Official Credit Guarantee for Small and Medium-sized Enterprises [Member] Amount of increase in right-of-use asset in a noncash (or part noncash) transaction obtained in exchange for operating lease liability. Noncash or Part Noncash Transactions, Right-of-Use Asset Obtained in Exchange for Operating Lease Liability Operating lease assets obtained in exchange for lease liabilities, net Lease Term and Discount Rate [Abstract] Lease Term and Discount Rate [Abstract] Weighted-Average Discount Rate [Abstract] Weighted-Average Discount Rate [Abstract] Weighted-Average Remaining Lease Term [Abstract] Weighted-Average Remaining Lease Term (Years) [Abstract] Percentage employer matches of the employee's percentage contribution matched. Fifty Percent Contribution [Member] 50% Contribution [Member] Percentage employer matches of the employee's percentage contribution matched. One Hundred Percent Contribution [Member] 100% Contribution [Member] Two major customers to the entity. Two Major Customers [Member] Concentration Risk [Abstract] The number of major suppliers of the entity. Number of Major Suppliers Number of suppliers accounted for 55% of inventory purchases Number of major customers of the entity. Number of Major Customers Number of customers accounted more than 0.5% of revenue Ten major suppliers to the entity. Ten Major Suppliers [Member] Five major customers to the entity. Five Major Customers [Member] One major supplier to the entity. One Major Supplier [Member] One Major Supplier [Member] The number of suppliers of the entity. Number of Suppliers Number of suppliers Accounts Receivable And Expected Credit Losses [Abstract] Accounts Receivable and Expected Credit Losses [Abstract] Amount of lease liabilities consisting of operating and finance lease as on balance sheet date. Lease Liabilities Total lease liabilities Operating Lease, Non-current Liability [Abstract] Noncurrent [Abstract] Operating Lease, Current Liability [Abstract] Current [Abstract] Finance Lease Costs [Abstract] Finance [Abstract] Amount of lease assets consisting of operating and finance lease as on balance sheet date. Lease Assets Total assets Primary financial statement caption encompassing impairment expenses. Impairment Expense [Member] Impairment Expense [Member] Business Description [Abstract] Description of Business [Abstract] Disclosure of information about foreign currency translation and transactions. Foreign Currency Translation and Transactions [Table] 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. Foreign Currency Translation and Transactions [Line Items] Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable recorded during the current reporting period, related to the Company's liability for outstanding gift cards. Retail customers purchase gift cards or gift certificates that can be redeemed at a later date for merchandise or services. Contract With Customer Liability For Gift Cards Issued Gift cards issued Expected customer gift card redemption period, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Gift Card Redemption Period Gift card redemption period Gross amount of merchandise or supplies to which the entity expected returns as of balance sheet date. Inventory, Merchandise Expected to be Returned Estimate of merchandise expected to be returned All other countries excluding the United States and Canada. Other Countries [Member] Other [Member] Amount of interest expense for an underpayment of income taxes including foreign income taxes. Unrecognized Tax Benefits, Interest on Income and Foreign Income Taxes Expense Interest expense Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to permanent book to income tax differences. Effective Income Tax Rate Reconciliation, Permanent Differences, Percent Permanent book/tax differences Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to Interest on unrecognized tax benefit. Effective Income Tax Rate Reconciliation, Interest on Unrecognized Tax Benefit, Percent Interest on Uncertain Tax Position Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accounts receivable. Deferred Tax Assets, Accounts Receivable Accounts receivable Refers to 2013 Restricted stock plan. Two Thousand and Thirteen Restricted Stock Plan [Member] 2013 Restricted Stock Plan [Member] Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time. Serviced Based Restricted Stock Units (RSUs) [Member] Serviced Based Restricted Stock Units [Member] Refers to 2023 Restricted stock plan. Two Thousand and Twenty Three Restricted Stock Plan [Member] 2023 Restricted Stock Plan [Member] Share instrument which is convertible to stock or an equivalent amount of cash, when specified performance conditions are met. Performance Based Restricted Stock Units (RSUs) [Member] Performance Based Restricted Stock Units [Member] Minimum amount of operating income to meet the performance condition. tlf_SharebasedCompensationArrangementBySharebasedPaymentAwardMinimumOperatingIncome Minimum amount of operating income, award vesting condition 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. Restricted Stock and Restricted Stock Units [Member] Restricted Stock and RSU [Member] Unrecognized cost of unvested share-based compensation awards in excess of one year due in the fourth fiscal year following the latest fiscal year. Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Four Years 2027 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. Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Two Years 2025 Unrecognized cost of unvested share-based compensation awards in excess of one year due in the next fiscal year following the latest fiscal year. Employee Service Share-based Compensation Nonvested Awards Compensation Cost Not Yet Recognized Due In Next Twelve Months 2024 Unrecognized cost of unvested share-based compensation awards in excess of one year due in the third fiscal year following the latest fiscal year. Employee Service Share-based Compensation Non-vested Awards Compensation Cost Not Yet Recognized Due In Three Years 2026 Carrying value as of the balance sheet date of obligations incurred and payable to vendor. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). Accrued Vendor Payables Current Accrued vendor payables Carrying value as of the balance sheet date of the liability for outstanding gift cards. Retail customers purchase gift cards or gift certificates that can be redeemed at a later date for merchandise or services; those unredeemed represent a liability of the entity because the revenue is being deferred. Contract with Customer, Accrued Liabilities For Unredeemed Gift Cards Unearned gift card revenue Represents to the carrying amount of sales and payroll taxes payable as of the balance sheet date. Sales and Payroll Taxes Payable Sales and payroll taxes payable Disclosure of accounting policy for sales discounts. Revenue Recognition, Discounts [Policy Text Block] Discounts Disclosure of accounting policy for the classification of shipping and handling costs, including whether the costs are included in cost of sales or included in other income statement accounts. If shipping and handling fees are significant and are not included in cost of sales, disclosure includes both the amounts of such costs and the line item on the income statement which includes such costs. Shipping and Handling Costs [Policy Text Block] Shipping and handling costs Disclosure of accounting policy for deconsolidation of foreign subsidiaries. Deconsolidation of Foreign Subsidiaries [Policy Text Block] Deconsolidation of Foreign Subsidiaries Name of the share repurchase program. Share Repurchase Program [Member] Share Repurchase Program [Member] Percentage of outstanding common stock in prior to the repurchase. Percentage of Common Stock Outstanding Percentage of outstanding common stock Fair Value of Financial Instruments [Abstract] Fair value of financial instruments [Abstract] Tabular disclosure of lessee's operating lease assets and liabilities recognized in the statement of financial position. Lessee Operating Lease Assets and Liabilities Operating Lease Assets and Liabilities Tabular disclosure of lessee operating leases lease term and discount rate. Lessee Operating Leases Lease Term and Discount Rate [Table Text Block] Lease Term and Discount Rate Tabular disclosure of other information of operating leases. Lessee Operating Leases Other Information [Table Text Block] Operating Leases Other Information Cash Paid for Amounts Included In The Measurement Of Lease Liabilities [Abstract] Cash Paid for Amounts Included in the Measurement of Lease Liabilities [Abstract] Shipping and handling costs [Abstract] Shipping and handling costs [Abstract] Discounts [Abstract] Discounts [Abstract] Number of classes of customer discounts. Number of Classes of Customer Discounts Number of classes of customer discounts Deconsolidation of Foreign Subsidiaries [Abstract] Deconsolidation of Foreign Subsidiaries [Abstract] EX-101.PRE 10 tlfa-20231231_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE GRAPHIC 11 image00001.jpg 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% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#ZIHHHH ** M** "N6^*'B)O"O@/5]6B(%Q%%L@R,_O'(53CV)!_"NIKQ#]J_4_L_@W2].63 M:]Y>>8RYY9(U.?PW,GZ4(#-_9K^(.IZQJ%[X>UZ[N+Z3RS=6UQ.Y=Q@@,A8\ MD<@CTP?:OH&ODO\ 99MVE^)$\@!VPZ?*Q...70?U_2OK2FQ(**Y_5/&GAC2I M&CU#7]+@E7K&UTF\?\!SFN;G^-'@*&;RCKRLV<$I;3,H_$)C\J0ST2BJFE:E M9:OI\-]IEU#=6DPRDL3;E:K= !1110 4444 %(PP!'D*>1W#KB@!_PK^(-EX_T5[F"/[-?V MY"7-J6W%">C ]U.#@^Q':NVKXV_9UUB;2_BAI\$;'R+]'MIESP1M+*?P91^M M?9--H2"BBBD,**** "BBB@ HHHH **** ,'X@3S6O@/Q)<6TLD,\6FW,D&M5U41><;*UDN!'G& M[:I.,_A0!I2R)#&TDSK'&HRS,< #U)KY-_:6\6:=XC\3:9;:->0WMK8V[;IH M6W)YCMR >AX5>1QS[5PWC7Q[X@\8W3R:Q?R&W)REI$2D*?1>_P!3D^]./$WB ,NKZW?7$3## M1>84C/\ P!<+^E:7P]^&GB#QTLDVDQP16,4GE275Q)M0-@$J ,DG!!X'<5[; MX7_9UT:TVR>(M2N=0D')B@'DQ_0GEC^!%%T(^7:UK/PSKU[#YMEHFIW$6,[X MK21QCUR!7W%H'@[P[X?0#1]&L;5@ /,6(&0X]7.6/XFN'^+?QAL?!H:YC+QLQ\NW!Z;R.I_V1SZD<9+CL>=_LIW^JQ>)-8TEA+_9@MS-*C@XAF#* MH^A(+ COM'I7TU7C7P:^+ECXKU&33-4L+33=;N"9!);KMCNB/KSNQV).0#SV MKV6DQH**S['6]+U#4+NQL=0M;B\LVVW$$RAAN]9N@6CBD8[8D'&]@.2,\ 9&<'GBD!Z717C/P/\ BW>>-=5N](UZ"UAO MEC\^W>W4JLBC 92"3R,YX[9].?9J "N'^-W_ "2GQ'_U[C_T-:QOB]\6[/P, M1I]C"E]KCIO\ICB.!3T+XYR>RCGOD<9\CO\ XV7'B3P)X@T7Q+;0I>7,(%K- M:H0K'>N58$G'&3GVQUZM(1Q7P81G^*7AL1G:?M8;.<< $G] :^XJ^(?@B0OQ M6\.$D#_2".?]QJ^W))$BC:25E2- 69F. .I)H8(=15;3=0L]4LX[O3;J"[M M9,[)H) Z-@X."..M332QP0O-/(D<4:EG=VVJH'4DGH*0Q]%<7\0M4$W@C[=I M>H.NGS.AFO;&3)6 YRRNN<#. 6'0$G(QDXO8&U!KRW6,&9%N#<10 M2838%ER02P+E@.F!D9^9@#UFBBB@ HHHH **** .<^)'_)._%/\ V"KK_P!$ MM71USGQ(_P"2=^*?^P5=?^B6KHZ "BBB@ HHHH **** "BBB@ HHHH **** M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH * M*** "BBB@ HHHH **Y?XCZA>Z;X;673)YX+F2]M;??!&DDFV2=$8(K@J6(8@ M9'6K'A/[?_9MP][=:I<3;R$_M."&)UP!T$2@;>>IYZT =!4-]:PWUE<6ET@> M">-HI%/1E88(_(UQ/A+4-876;2#Q!J&HIL-XMLXK?Q-J%O:722S&W2WMF5-ACPH+1%L'<'_'&L:5IK.UI:S^7&7;;? ]X=&^"NDW5](L4$4,]U-)DD*GF2-D_1?Y5T7@OQUX?\9K M/_8%]Y\D&/-B>-HW4'H<$#(]Q28R7XA>)(_"7@[4M9D 9X(\0H?XY&X0?3)& M?;-?(/PU\*W7Q$\/P_H%DB MM]FGN9)9&'3&_&5XNFRM'+IM^ZP29R5,J1W_ (YKQ^OJ?P7H(\._LVZQ*R#[3J6F7-Y*?42 M1$)_XYM/U)H8D> _"W4WTCXB^';R(XVWL<;'_8<[&_\ '6-?9?Q"\3P>#_"- M_K,ZAVA3;#&3CS)#PJ_GU]@:^)/!X^1/YO0]QH\&FEU+Q1XB+R,]WJFHW '/5Y'. /8V.V;:_SQ$N>2I[%G R,T7U$>6?!_ M_DI_AK_K]2OI_P#:&OI;'X3ZOY#,C3F* L/[K2+N'XC(_&OF#X/_ /)3_#7_ M %^I7TI^TK_R2F]_Z^(?_0Q0]QK8\U_91\0SPZ[J7A^1F:UN(3=1*3PDBD X M^H/_ (Z*]9_:"D>/X0>(&C=D8B!25..#/&"/Q!(KP#]FAB/BK: $@-;3 X/7 MY:]R_:2O$MOA/J,3D!KJ:"% >Y$@?^2&D]PZ'G'[*OB>X75;_P ,W#E[.6%K MJ!6.?+<$!@/9@<_\!]S7TI##%!'L@C2-,YVHH _2OC_]FG_DJUE_U[S?^@5] M2>.+J^L="^U:;!][KST_$#W!&_17.>-KS4+.TLCI_ MVN.&2XV7<]G )YX8MCG='&5;<=X0?=; )...(/ VJWFJV>L0W,L[R6-Z;6*> MY@$G0W5SJL\5U#+]H34+!;80RJ%.(B$4LO+?WQT^; MU .]HHHH YSXD?\ )._%/_8*NO\ T2U='7.?$C_DG?BG_L%77_HEJZ.@ HHH MH ***IZAJFGZ;L_M&^M;3>"4\^98]P&,XR><9&?J* +E%%5)-3L8KU;.6]M4 MNVQM@:50YSTPN_()XH T:*HW.KZ;:W0MKG4+.&X8@"*2=5DD8*J]N2>* ):*R6\2Z$H).M:8 .23=1\?K6I# M*DT22PNLD3J&1U.0P/0@]Q0 ZBBJ-]J^FV$PBOM0L[:5EWA)IU1BO3.">E % MZBJ37UK':3 &*=IE".",C:V<'(Y&.U6+>>*YA2:VECFA<95XV#* MWT(H DHJGJ>J6&E0K+J=[;6D;-L5IY0@9CT SU/M2:5JNGZO 9M+OK:\B4[6 M>"57"GT.#P?:@"[14%]>6MA:MHR>7I^I65U(4\S;!.LAV\ M?-@'IR.?<47NM:78W/V>^U*RMKC8)/*FG5&VDD!L$YQD$9]C0!?HJCI6KZ;J M\1ETG4+.^C'5[:=90/Q4GT-7J "BBJ=WJEA9W$<%W?6L$\F-DE/9RW:ZG8M:Q,$DF%PA1&. 6S@$Y''N*EM=3L+NVFN+6^M9[>$D2 MRQRJRH0 3N(.!P0>>QH MT55BU*QF3=#>6TBD9!652,9QGKZ\?6K5 %#7-(L MM M,8S(S$#'8<5IT4 8.B^$=%T6YCGTZUEC:%62%7N99$A!ZB-&8J@/^R!6O):0 MR7D-TZ9GA5DC;)X#8W<=.=H_*IZ* "O@WXF(R?$;Q0'4J?[4N3@C'!E8@_E7 MWE7QM^T9I#:5\4M0EQB*_CCNX^/4;6_\>1OSIH3/=M*'E_LV/N&W/AV8\\=8 M6Q^>:\9_9>N3!\3?*#$"XLI8R/7!5O\ V6O2O%FLII7[,>G;9%$MYIUM9QC/ MWBP&X?7:'_*O.?V6K%[CXC37(0F.ULI&+XX4L54#ZG)_(T^@'NWQJN_"=OX1 M(\:Q?:("^ZVMXV*S/*!QL(((X/)Z8/-?+,GC_5++3I]*\+-)H.CR2M,;>VF9 MI&8@#+2GYB<*!QM'M70?%XZKXP^-%YI,&Z687"V-I$QPJ* /R&!0!\NNS.Q9R69CDDG)) MK[5U*);+X!W$!8LL7AHQ!L=?]&P*^*Y7\R1WVJFXD[5& /8>U?BR#;Z;83Q^E#!'P_#$\TR11+ND=@JCU)X%?,] D()":A;L<>TBUZ5^U4Q;XD6@)X738@/;]Y(?ZUYCX1_P"1KT7_ M *_8?_1@KU_]K+2WA\4Z-J@!\JYM#;].-T;D_P I!^5/J+H=%^R/:*NC^(KS M WR3Q19SSA58_P#L]=C^TA>16WPEU2*0@/=2P0QC/5A*K_R0UQ?[(]ZK:9XB ML<_/'-#.!ZAE8?\ LGZBN<_:F\4#4/$EGX?MI,P:YE2)#;S_,Y MP.(R3S] 3^%<[\4?$O\ PEOCK5-50DVSR>7;CTB3Y5^F0-WU)HZBZ'6?LRQ> M9\4H&SCR[69OKP!_6OJ[7M%LM>L19ZD+AK<.)-L-S) 21TR8V4D=\$XR >H% M?*W[+X)^)W )Q8S$^W*U]=4GN-&9?Z'8:AIUM97:3216Q5H9/M$@FC95*AA* M&W[L$C=NR1TGN9)\LYRW,C,1DDDCN23U)J'1_#&E:1 M:B&*,S7,LPA0XRL8=B$7@<+@<#TK:HH **** .<^)'_)._%/_8*NO_1+5T=< MY\2/^2=^*?\ L%77_HEJZ.@ HHHH *XSXN:*GB+P;)I,DAB^V7-O$) ,["95 MP:[.N8\975_'<:5'I^C7NH*EW'/-) T:B-!G/WF&3TX_6@##^%?BMKCP-<#Q M%((-1\/E[34C(>5\H??/U4=>Y!K'\"VT\?QCU2[U$%=0U#18KR6-CS#NF(6, M?[J*BG'4@GO6CJ'@V\F^)\.K6>Z'1-5M5;5H" -TL+*T0.#U/ /485P?O4RW MMM8'QLEUUM"OAI+Z4--6?=%P_FA]Y7?G;P??VIB/3:\0\=:G%:^+M/\ '$-Y M'Y>EZI_9,T0FZVG*2.5]1*TGY*>W'KOB.[O++1;J;2[*6^O@C""",J"SX.W) M8@ 9QFN+E\'V$_PODL;C0'DU)K#R7_#-8U!)&M[6SO9'$:;F.(FP /J?H.IP.:[OX8SZRWA*QM/ M$FF7%CJ5G"L$C2NCK-M& ZE6/4 9SCDGKUKG/&6EZG??%GPOJ<6B75WI.GPW M$-U(#%M82QLHPI<$@;N>/SI@=3X3L[;4-GB:6:WO;Z^A4Q3Q?,D,)Y$49P#C MDY)P6.;?"R'5="\(W&G M:YX;U 2_:YI5C4PR"1'?0?2N_T&>^NM+CGU2V^R74C,QM\@F)=QVJ M2"06VXSCC.<4 :%<]X\\*V7C'PS=Z1?J!Y@W0RXR89!]UQ]/U!([UT-!. 3U M^E 'DOA&_P!9\9V#^%?$5OY3Z1+]GUJ8$8NPO^K1,=GQECCH"!][CU>&*."% M(H46.)%"JB# 4#H .PKS[X?VNK6?C;Q?<:AHUW:V6J7,<]M.[QD$*A4A@K$C MH,=>O:O1* /,_A1-_P )+K?BKQ)J"^9>0ZG+IEKOY^SP1A2%3TW%LMCJ15'X MO'_A$O$7AKQ=I6(+B:^33K]$&!=0N"?F'.TD;D;_9R1@#&.:L>(-%NO&FO:.+RTEL]!TJZ%\?/P M)+N91A %!RJ#)R6P3TQCFF!W1 (((R#P0:\L_9I 'PILR !FXF)]_GKU.O,? MAW9ZKX"LKWP_=Z+>7FGQ7,DUC>6120/$QR%<%@RL/?CWXR4!N^#T1?&_CLJJ M@F]MLD#&?]$B/]3^=8'Q[:./3O"$LJY5/$EH3A2QVXD) Y/3H*ZSP?IUW!< M:UJNHP_9KG5KI9_LQ8,T*+$D:*Q!(+83)P2!G&3C-<]\8M/U758_#<.CZ5:>)M%UG2?%MIXQ\(Z<]S-=HMOJVELZQM,F/E<$G:' M7IU]/?/HEC.]S9PS26\ML\B!FAEV[XS_ '3M)&1[$BD!/7G/QP\-7'BO0M)T MZQ8QW1OFEBD!"E72UG9!GL"ZH#CUSVKT:N6\27NHQ^(=&2TT6^N[.WE>:>XB M,05J?#:/7KU3]LMHS#=P 8?[2ORE .S,VW _V MA7,?!BTN;'XA?$.'4I1-J!:QEG?.1YCQR.X7_9#-@>P%:]AX*O++XG:E>0L$ M\,W31ZHUN,8:]7I KF?B#X/L=0^'-U:Z) MX)U(*DMD #CD@G@GK0!Z37CWB>_LM+_:$LKO4X#1XWF1FW8+YVX8=L^U(!/@_:M-K'BO7]/C% MOX;U>YCETZ$ *'VJ5DE"C[NX^N"<V6EZ;+J7@_4I?M$2PR(K:=(Q^<;6(RG? [=.&-3BL[2 M>\N)K>2&.*$J&+,I Y8@ <^M 'EOPJUC3_%'AG2O!\4R0PV>GQR:A"R%7NE; MDQH"/N<_.PZ[@!US7LT,$5O;I!;QI%"B[$1% 51Z =*\?L? FHWW@'0)[>UE MT3QKH,(2VFD*'S=O_+-BK$&-NG/3)XP2#Z3X1U+4]3TF*37-(GTK4%4":)V1 MD9L"KCPOX5GU#4X M6AU'5&60QL"&CB4'8".Q.6)^H!Z5VD'@'PK!X@.MQ:'9KJ9;=YH4X#9SN"YV MALG[P&?>NGIMBL?,'[17@?5=-\5/XOT6.=K2;;)-+;DA[65 !N..0" #N['. M<<9\H1_$OCO6[:U:?4-9U!_EB661I"H[]3A5]3P/6OO8C(P>E5K2PL[-Y'M+ M2W@>0Y=HHPI;ZX'-%PL?"7C;PCJW@S6/[-UN)$F9!(CQMN213W4_7(_"ONJ: MW@U'1GM@A7^M7%M;=;IKE8(AZ)8B%Q<_P!H1(R%>5(D&[(]L'/TKZZ^,W@P^-O!<]G; ?VC;-]HM">, MN /7'UGKW@OPWK]TMUK.BV-WQXK?LXZ+-JGQ.L;E%/D:><9Q]3^9K3H; _.N6-XI'CE1DD0E65A@J1U!'K7?>(?!#>'? MA7I>LZE$\>J:I>@QHPP8K<1N1GW8D-],=.:^M-3\$^&=4U5=3U#1+">^5@WG M/$,L1T+?WOQS7BO[7&HG=X;9>WRR/;Q[&.\1@%^0,#&X=2.O%7JX?Q1_R5;P-_U[ZE_Z!#0!W%<= MJ'Q+\*V&H75C6V9BH9X7B.0<'Y7 M /Z5!KGB;1]"OM-L]6OH[:YU*7R;5&5CYC9 QP#CEAR<#FK6B3:A/ILDG?##-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>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$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,/#+>(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 GRAPHIC 12 image00002.jpg begin 644 image00002.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" !2 .T# 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#ZIHHHH ** M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HJEJ6JV6F;/MTWDA_ND MJ2#^(%4?^$KT3_G_ $_[X;_"H=2$79M$.I"+LVC;HK'A\3Z/-*D<=]&7<[0" MK#GZD5L4XSC+X7<<9QE\+N%%%%44%%%% !1110 4444 %%%% !1110 4444 M%%%% !1110 4444 %%%% !1110 4444 5M1L8-1LY+:[0/$X_$'U'O7D7B70 M9]$N]CY>W M9X57?>#?%P54L=5DX'RQSL>GLW^-Q]ZQZ\J$YX M>?F>3"<\//S/?@01D<@T5Y3X9\6W&E;8+K=/9] "?F3Z?X5Z7INHVNIVXFLI MED7N!U7V([5Z]'$0JK3<]BCB(5EIN6Z***W-PHHHH **** "OD_]JO6/%G@[ MQ]IFI:+X@U>UTR_@5UMXKN18A+$0&&T'&"-A(QSDU]85XQ^UEX9_M[X4W%[$ MFZYTB5;M?79]UQ^1S_P&@#U#PWJL'B7PKIVJ6[$0:A:),"C$%=ZY(!Z@C/Z5 M\H?!KXA:WI/QV?0=:\3:CJ^D37,^FHUU=/*FX,?+*]?U.\L(R+>$7MT\D:!!OD?#$CH5&?K7-?M2?$"+Q!\//!EGIS_P#( M9C74YD3L -H7_OLM^*5Z)J^@2>"/V5;_ $R!=EW'I):X*\'S)"#)^6XC\* / M'_$GQ&\>_&7QI-H7@&6YL=*4L8T@D\DF,''F32#D \?+TY P36;XJ\+?%7X. MPV^OMKTTEKYBH\EM>/-&K'HLB. "#]"*Q?@7X2\>>((]6NOA[K46EM"8XKK- MRT+.#N*_=4Y'!KT;6_A!\:]=TV73]8\4VM[92XWP3:A(RM@Y&1L]0* />/@[ MX^3Q_P##^WUQXA%>1[H;N%.0LJCG;[$$$?7':OFFQ\3_ !(^-WC:[T_1=:FT M/3E#R)&DDD,4:*0 K,@RS\CK[]*]T_9T\ :Q\-?"VKV?B2:RW377VE6MY2R* M@0 DD@8Z5QOB[]J#0='NYK'PGHLFIB-BHN&<00L<]5 !)'X#- 'FWBB^^)OP M+\1Z8VH>)'U.UN@9%C:Y>>&8*1N5E?E3R.1Z]:]@_:-O]VD9VL5_,U\W_&;Q_P")O'\NE7GB324TVUA$@L_+@=%< M';N^9C\V,+TK[3\/:-;^(?@WIFD7JAK>^T6*!\]MT(&?J.OX4 70M#\/:E=Z?>S% MKNXDM)FC?8/E1: MGJ_D+(RW4[222SR\K%N.2 <'T"FO =#M?BS\<;F[U*WU:6UTR.0H";AK>V1 MNNQ%7)8@8YP?*8;+1;A#+! M^\>S+'.5"$ YSF@#-M_%'Q$^!7C2UL/$MY/?Z;*!(UO)< M&:&>+."T;-RK#\.>HQ7T3\?/$%Q#\#=1UOP[?W%J\L=M-;W-M(8W"/(G(8'( MR#^M>(>)O@1\6O%#V[^(M=T[4FMP1$;F^D!^%_&?Q*\?:;;^"="U'4;JXDE>XN+I[IC M(R<&_!MQ!XUOKF:Z>Y;R+::7S3;QKQPV22 M&.3C. ,>IKD/V+]*LX/A]J.J1PK]ON;YH9)CU*(J[5^F6)_&OH2@"MJ-E!J- MG);7:!XG'/J/<>]>1>)=!GT2[V/E[=S^[EQU]C[U[-7,?$36])T7P],^L@2B M0%88 ?GD?MCTQZ]JYL1AU67F458L;VXL9Q-:3/%(.ZG%<$?& M%UDXM8,=N31_PE]U_P ^T'YFO.6#K+5'BI-.Z/=-&\>\+'JT/MYL0_F/\/RK ML]/U2RU%-UG++SP5"TGGR:DMHT Z22J[(C'_OH_G7VS\2 MOAU;WGP*G\*Z='N?3;)'M,#DRQ#.?JV&'_ C76-X!\+-XJ_X25M%M3KN_P S M[9@[]VW;GKC./:NGZ]: /SV^!>AW'C7XH^&].O&>>QT\^>Z.(](M]?T#4=)O1FVO;=[>3'4!@1G\,UE>&? ?ACPOJ5SJ&@:-:V-Y M<*4EEB!RP)W$(?#NC^([06N MO:99ZA #E4N(@^T^HST/TKG]'^%?@;1[M;K3_"^F1W"G*NT7F%3ZC=G'X4 < MU9:YK?Q"_9YU*\-C/9ZY>:=/$8O*:/S'"D9C!Y*L.GUQ7S;^SQ\0O"O@"?6/ M^$LTF2>ZF*&WN$MTE>+;NW)\Q!7.1T].:^[.G2N'U[X3>!=>U1]1U3PU8S7C MMN>1=T>\^K!2 Q^M 'QO\=_B?-\3M3L[F#3&L=)T_?%;EOF=B^"=Y' /RC"C MISR:^Q?@?XBLO$OPRT2YTY9A';VZ6;^:FW]Y&BJV/49[UKW/@7PM<^'1H,V@ M:<=(#;Q:K"%0-_>&.0WOUK1\-Z#IGAG1K?2=#M$L]/@SY<*DD+DDGDDD\D]3 M0!\A?M5:-=^#OBO9>*M&=K8ZB@G25!]RXCPK?F-I_$UZ!^QAX4-EX9U/Q1=( M?/U&7[/;L>OE(?F(^K_^@5[GXL\(Z#XNM8+?Q)ID&H0P/YD:RY^1L8R,$=JT M-%TJQT32[;3=)MH[6QMEV10QCY4% 'GG[1/@*?Q]\/9;73D#ZK8R"[M%Z>80 M"&3/N"<>X%?/7P3^.4_PVT^7PSXITR[GL;>5C%Y>%FMF)^9"K8R,Y/4$$GK7 MVK7,>)O /A3Q1/Y^OZ!I][<8QYTD0$F/]X8/ZT >#Z]^U)]LU*PL_!OAVZGW MSH)3 M!_#'A9R_A_0K"PE(P98HAO(]-QY_6MG5--LM6L9+/5+2"\M),;X9XPZ-@Y&0 M>.H% 'B?[&W_ "2>?_L)2_\ H*5[M5'1M'TW1+0VNCV%K8VQ8N8K>(1KN/4X M'>L[QGXIL/"FDM>7[;I&R(8%/S2MZ#V]3VH%*2BKL7QGXHL/"FDO>7[9D.1# M #\TK>@]O4]J^7/%7B*_\3:M)?ZE)N<\)&/NQKV51Z4>*O$-]XFU:2_U&3+- MPD8^[&O95'I60JEV"J"6)P !R:1Y&(Q#JNRV$KH?"?@_6/%$^S3+8F$'#W$G MRQI]3W/L,FO1/AW\)&N%BU#Q2K1Q'YDL@<,W^^>P]NOTKVZTMH+.VCM[2&.& M",;4CC4*JCV%!I1P;E[T]$>=>$_A#HNE*DNKDZG=#DAQMB4^R]_Q_*O1[>"& MVA6*VBCAB485(U"J/H!4E%,]&%.--6B@HHHH+"BBB@ HHHH YCQ1J,\/IS71>5&.D:=C]WTZ4TVT!\S,,9\S[^4' MS?7UH]G/^8/9S_F*%OJ$ZZ?:37-L[RS2!"+<;@H).&/)P,8SR:H^(/EU2 ^? M=+&L$L\R12EYKH5544*@"J. , 4%%+9*@G&,X[>E5*#<;-E2@W&S M9RJ^(KE+>YE;[+((EB94CRQ8MDE <\L%%;,.H2"RLII86F:Y91_HXW*@;D$G MT'Y+I2;OH-=-Y,6T+Y:;0" -HP >U-^S M0;$3R8MB'*KL&%/M3]G/^8/9S_F,$:S?RP7<\<$*1VT"2.KY+;BNXK^ K6TB M[DOK4W+($BD8F$=RG8GZ]?IBI+RSBN[=X9-RI(07V':7'H3Z&K"*$4*@"JHP M .@%5&,D]67&,D]68/C+Q38>%=):[OF#2$$0P*?FE;T'MZGM7R]XJ\0ZAXFU M:2_U)RSGA(Q]V->RJ*^N+FRM;IE:ZMH)F48!DC#$?G4/]CZ;_P! ZS_[\+_A M6AC7H3JZ7LCXWBBDFE2.)&>1R%55&22>@%?0_P *_AM%H4<6J:W&LNJL-T<9 MY6W_ ,6]^W;UKT.+2["*19(K&U1U.5985!!]CBKE!-'"*F^:6H4444'8%%%% M !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 ;%%%% !1110 4444 %%%% !1110 4444 ?__9 end GRAPHIC 13 image00003.jpg begin 644 image00003.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" R 3T# 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#ZIHHHH ** M*\YU+6]8\1^/H=&\+7/V;2])<2:M>[-RO)QBW7U.#EO3CTH ]&HHHH **** M"BBB@ HHHH **** "BBB@ HHJ+[3!]I^S^=']HV[O+W#=CUQZ4 2T444 %%0 MFZ@%VMJ9HQ,YVNIP5/H10!H45@>)_&/A_PM);)X@U6UL&N QB$[[=P7&?YBMBQO+>_LXK MJRFCGMIE#QRQMN5@>X- $]%%% !1110!Q_Q-\0W6BZ+#::,OFZ_JDHM-/BZ_ M.?O.?]E%RQ/TK4\'>'K7PMX?@TZU)?9F2:=_O32MR\C'U)R:Y+P^JZ]\1O$' MB34YT6T\/N^E6,3M@0G8K3S-_O9 !_N@UQ7Q5^(U[XH-IX7\ ^8+?4[U=-FU MEAMA+,"6CC/5L#)+#V ^\#0![]D$9'(KD?!&N7FIZGXK@O'66UT[4FM[:X"[ M0R^6K,A]2C,RD^U0^(=>MO!FB:?HFFB2_P!Y:21U0 <[2V.E 'KFG: MC9ZE$\FGW4%S&CF-FA<.%8=0<=ZL+(CE@K*Q4X8 YQ7SCX:U._T:SO- \#6, M>G:_XGO7U2WMW0!-&L,(JRS#H&*KD)S]X?0I\,?%.F>#+;Q3?VIOM7CU&\CM M["[GN09=:NT4B5HT(PD89N7)P%QDY&* /I&LW6M=TK0XXWUC4;2Q24[4:XE6 M,,?09ZU\^Z%XV\3Z3X;TA9;]9O&WCC4UNK2UN"7AL;1F !VYX4J. .N?4&NF MU'Q-J6K^+O%\?AZSCEU&Q<6,&K785;/2X50&5V<]7WEB5&QO+; M4+.*[L9XKBVF7='+$P97'J".M3UX@MIK@^%#4=%T^]5E87-O',"O0[E!X_.@"[1FJ6M:G: MZ+I-WJ6H2>5:6L;2R/C. !V'<^@[UYCK4^_2Y?%/Q+U>[\/Z6,_8M*MKQX'C M7J/,:,AI)F ^X#A1QR1=ZOK[::U\+61E21;<9* M2SOT0%0O/)8] >:E\ _&/2O&OB:73=-MWBM;?2EU&XNIG"A')3='COM#\MZ@ MCWH ]*U"[AL+"YO+IQ';V\;32.?X549)_(5X7X86 M)/[NR,,S"(+TV",*?J^: /4 M:Y_Q7XC;1%AAM=,U#4]0N ?(@M825)']^3[J#GJQ%=!10!Y)+HUUI7Q,\#:Q MJ=R9M=U1[NTO2K'RDC^S/*(HQV56C'/4\D]>/1='UR'4]2UBQ2&:*?3+A8)/ M,7 ?=&KJRGN"&_0UY_\ %KQ/HWASQYX'NM;OEMH;,7]XP)ZX@,8&.Y)D( [F MNKTOQ/H9\)Q^,[P?V397UM'<227>$;9CY-V"%(8@X_*O$ M_B%XZ7XIZ_IW@_PI;7P>&1KBX6ZMRF9 0L9<'I&FXR'=][:JXR:]NLKG0/!- MGX=\-?:4MC,HL]/@(+/,47GH/Q).!D^] '345BZMXHTC2M;TO2+VZVZEJ;,M MM;HC.SX&2QP#M48ZG J+Q7XA_L=+6ULX/MFL7[F*RM0VT.P&6=S_ QJ.6;Z M D@$ WR<#)X%>2VWC[5];^)FDIH44;^#&NI=+ENCUN;D022EH_5$\K&>A)/ M6H;_ ,9:K?>"=8LK^YTZ'4FU<:"-1M"4ML.%,DJ;SUC1I >3\T9JO=7=GIVB M)KNB1K8^#?"NGW$FF>9\@OKIHV177=R4 9@&/WVD)&1@D ZNZ\/_"6QNO$]AX0U^ZBEM=(T MBP L8I"/,NKEX]DUP^.B\N%'4[BQQQ7L% #)V=()&C3>ZJ2JYQN..!7A.N?$ M[Q=J.EZ5X?M_!NK:;XHU:0Q$RXCB"(VO+RYO9_L]M;6<0>2:3:S8&2%&%5CDD#BO*F\;,GQ>NM7U[P_K-CIND:,MO M*YC2?[(TTGF&201,V%*1KR,XVG.!S0!OZ-X"UK4]'AL/$]Y;:?H^/WND:6#^ M^!ZB:=OF;/.[ &Q<;"JD$#.,= ML&NT%[:FQ2\%Q%]D=!(LQ+-;\(:(]U.UPMA:WVHOY$$$*1J=H4_/ MN+LS,H4=5R17I/@/PY)X7T>\%]>?;+^^NI-0O)E38IE?&X(O90% '?C/>N<^ M!&N:;KV@Z[?:7=+.+C6[VX9,_,BO*=F1U&5 (SZ^U=]#JEC/J=UIT-U$]]:H MDDT ;YHU?.TD>^#0!X&?$VE:]XZ\5ZS)X2ZEMHYXFN(@K21*X+(#G!(Z@'!Q M]* )J*** "BBB@#BM9^&/AC6-;N-3OK.5I;DJUQ$D[I%.R]&= 0&/UK2U[P7 MHFM>'HM%N+-8+*!UDMQ;'RFMW7[K(5QM(R>GK71T4 1^*/@A?>)M +Z_XCEU3Q.'3RKNXC_<11A@2BQ MXY Y/4_C7N=% '$^'/A_::/X5U33S<23ZGJT#I?ZBPS)*[(5R!T55S\JC@"N M7O?@9H,_@G3-&22:*^L+"6U6ZAVM?LUIHVFR-Y 8+@2R'@L1P57H,9Y->A>"8[N#PCH\&I0^1>P6 ML<,Z @@.BA21[$C(]C6U10!5U6S.H:;<6BW-Q:F9"@GMWV21^ZGL:XB3X9B7 M'F^,/&#=SC577/Y8KT&B@#RZ\^"/A2\L]1%['=ZAJ-W;M M_J%P]Q+%D8#*6 M/!!YXKBFTOQ\/$%E:^)M!@UE-(MXAHWV1@EB)Q\OGSJ6!+* , # YQCK7T-1 MB@#YZ^%OB!-*NM63^R;O6/B1J%],-1(@,20A9"J!Y",)'M56 &>O>M.\^'OQ M 3QU;^*(-9TF]U*:VDMF>[B8QZ:&8$&W3OA!WWPJ\:Z;XMEU7P]XAANKS5+'[)?:KJ(+3VQW99H%'"@@ =L5F+X M.UKPKXHN[35];\0W6@?9DM[66SM!-<2P ES 9A\T?S$@X R-OS<8'T?1B@#P M;6OAYKGQ*T&&QG6+PGX9M,/IVF)"KR&120))ATP06^4'^+GFNOT7X712W5G? M>-M3G\17MJH$$,J"*T@(7'R0+\O3USVKTJB@#RF/P%XOT&4V'@GQ9%IWAW<6 MAM+FR2=K4,265&/5S M8Q-$P=O*D0]5)3!^C$=#6WX8\':?H%KJ<2RW5])JP48 M KH;>&.W@CA@18XHU"(BC 4#@ 4^@#GSX/T5_!\7A>6T\S18XDA6!Y&/RJ05 M&[.>"!WJCXK\"6/B"^COXK[4M)U%8A;FZTZ?RG>('(1N"& ))&1QD^M==10! MPG@[X6>&_"-]8WNBQ3Q7EO%)%)-YIS=!SDF7LQSR#VXKL8=.LX;^YOH;:%+R MY55FF5 'D"YVACU.,G%6J* ,?0_#>F:)J&K7NFV_DSZI.+FZ(8D/)C&<=![X MJ6UT'3K77K[6H+8)J5[&D4\P)RZI]T8ZE:=% !1110 4444 %%%% !11 M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% < !1110 4444 %%%% !1110 4444 %%%% '__V0$! end XML 15 R1.htm IDEA: XBRL DOCUMENT v3.24.1
Document and Entity Information - USD ($)
12 Months Ended
Dec. 31, 2023
Mar. 22, 2024
Jun. 30, 2023
Cover [Abstract]      
Document Type 10-K    
Amendment Flag false    
Document Annual Report true    
Document Period End Date Dec. 31, 2023    
Current Fiscal Year End Date --12-31    
Document Fiscal Year Focus 2023    
Document Fiscal Period Focus FY    
Document Transition Report false    
Entity File Number 1-12368    
Entity Registrant Name TANDY LEATHER FACTORY, INC    
Entity Central Index Key 0000909724    
Entity Incorporation, State or Country Code DE    
Entity Tax Identification Number 75-2543540    
Entity Address, Address Line One 1900 Southeast Loop 820    
Entity Address, City or Town Fort Worth    
Entity Address, State or Province TX    
Entity Address, Postal Zip Code 76140    
City Area Code 817    
Local Phone Number 872-3200    
Title of 12(b) Security Common Stock, par value $0.0024    
Trading Symbol TLF    
Security Exchange Name NASDAQ    
Entity Well-known Seasoned Issuer No    
Entity Voluntary Filers No    
Entity Current Reporting Status Yes    
Entity Interactive Data Current Yes    
Entity Filer Category Non-accelerated Filer    
Entity Small Business true    
Entity Emerging Growth Company false    
Entity Shell Company false    
ICFR Auditor Attestation Flag false    
Document Financial Statement Error Correction [Flag] false    
Entity Public Float     $ 18,217,065
Entity Common Stock, Shares Outstanding   8,399,245  
Auditor Firm ID 410    
Auditor Name WEAVER AND TIDWELL, L.L.P    
Auditor Location Oklahoma City, Oklahoma    
XML 16 R2.htm IDEA: XBRL DOCUMENT v3.24.1
Consolidated Balance Sheets - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
CURRENT ASSETS:    
Cash and cash equivalents $ 12,159 $ 7,975
Accounts receivable-trade, net of allowance for doubtful accounts of $31 and $56 at December 31, 2023 and December 31, 2022, respectively 264 370
Inventory 37,993 38,227
Income tax receivable 248 302
Prepaid expenses 475 272
Other current assets 113 106
Total current assets 51,252 47,252
Property and equipment, at cost 28,678 28,124
Less accumulated depreciation (18,131) (16,962)
Property and equipment, net 10,547 11,162
Operating lease assets 8,995 9,742
Financing lease assets 23 31
Deferred income taxes 880 0
Other assets 438 392
TOTAL ASSETS 72,135 68,579
CURRENT LIABILITIES:    
Accounts payable-trade 2,333 3,082
Accrued expenses and other liabilities 3,140 2,681
Income taxes payable 288 211
Current portion of operating lease liabilities 3,172 2,881
Current portion of finance lease liabilities 0 15
Total current liabilities 8,933 8,870
Deferred income taxes 9 0
Uncertain tax positions 388 450
Other non-current liabilities 205 326
Operating lease liabilities, non-current 6,253 7,469
Finance lease liabilities, non-current 1 1
COMMITMENTS AND CONTINGENCIES (Note 8)
STOCKHOLDERS' EQUITY:    
Common stock, $0.0024 par value; 25,000,000 shares authorized; 9,823,621 and 9,717,525 shares issued at December 31, 2023 and December 31, 2022, respectively; 8,399,245 and 8,293,150 shares outstanding at December 31, 2023 and December 31, 2022, respectively 23 23
Paid-in capital 3,981 3,222
Retained earnings 63,659 59,891
Treasury stock at cost (1,424,376 shares at December 31, 2023 and December 31, 2022) (9,773) (9,773)
Accumulated other comprehensive loss, net of tax (1,544) (1,900)
Total stockholders' equity 56,346 51,463
TOTAL LIABILITIES AND STOCKHOLDERS' EQUITY $ 72,135 $ 68,579
XML 17 R3.htm IDEA: XBRL DOCUMENT v3.24.1
Consolidated Balance Sheets (Parentheticals) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
CURRENT ASSETS:    
Allowance for doubtful accounts $ 31 $ 56
STOCKHOLDERS' EQUITY:    
Common stock, par value (in dollars per share) $ 0.0024 $ 0.0024
Common stock, shares authorized (in shares) 25,000,000 25,000,000
Common stock, shares issued (in shares) 9,823,621 9,717,525
Common stock, shares outstanding (in shares) 8,399,245 8,293,150
Treasury stock, shares (in shares) 1,424,376 1,424,376
XML 18 R4.htm IDEA: XBRL DOCUMENT v3.24.1
Consolidated Statements of Operations and Comprehensive Income - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Condensed Consolidated Statements of Operations and Comprehensive Income [Abstract]    
Net sales $ 76,229 $ 80,335
Cost of sales 31,066 33,838
Gross profit 45,163 46,497
Operating expenses 40,753 45,109
Income from operations 4,410 1,388
Other income:    
Interest income (93) (9)
Other, net (42) (11)
Total other income (135) (20)
Income before income taxes 4,545 1,408
Provision for income taxes 777 181
Net Income [1] 3,768 1,227
Foreign currency translation gain (loss), net 356 (527)
Comprehensive income $ 4,124 $ 700
Net income per common share:    
Basic (in dollars per share) $ 0.45 $ 0.15
Diluted (in dollars per share) $ 0.45 $ 0.15
Weighted average number of shares outstanding:    
Basic (in shares) [1] 8,339,658 8,363,390
Diluted (in shares) [1] 8,369,976 8,394,567
[1] For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.
XML 19 R5.htm IDEA: XBRL DOCUMENT v3.24.1
Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cash flows from operating activities:    
Net income [1] $ 3,768 $ 1,227
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 1,199 1,201
Operating lease asset amortization 3,427 3,230
Loss on disposal of assets 0 9
Stock-based compensation 770 1,060
Deferred income taxes (902) (10)
Changes in operating assets and liabilities:    
Accounts receivable-trade 107 244
Inventory 231 (328)
Prepaid expenses (202) 210
Other current assets (12) 34
Accounts payable-trade (752) (1,739)
Accrued expenses and other liabilities 462 (1,527)
Income taxes, net 84 905
Other assets (45) 0
Operating lease liabilities (3,598) (3,362)
Total adjustments 769 (73)
Net cash provided by operating activities 4,537 1,154
Cash flows from investing activities:    
Purchase of property and equipment (576) (635)
Proceeds from sales of assets 0 10
Net cash used in investing activities (576) (625)
Cash flows from financing activities:    
Payments on long-term debt 0 (359)
Payment of finance lease obligations (15) (14)
Repurchase of common stock (11) (1,798)
Net cash used in financing activities (26) (2,171)
Effect of exchange rate changes on cash and cash equivalents 249 (538)
Net increase (decrease) in cash and cash equivalents 4,184 (2,180)
Cash and cash equivalents, beginning of period 7,975 10,155
Cash and cash equivalents, end of period 12,159 7,975
Supplemental disclosures of cash flow information:    
Interest paid during the period 0 15
Income tax paid (refunded) during the period, net 984 (430)
Supplemental disclosures of non-cash activity:    
Operating lease assets obtained in exchange for lease liabilities, net $ 3,396 $ 3,884
[1] For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.
XML 20 R6.htm IDEA: XBRL DOCUMENT v3.24.1
Condensed Consolidated Statements of Stockholders' Equity - USD ($)
$ in Thousands
Common Stock [Member]
Paid-in Capital [Member]
Treasury Stock [Member]
Retained Earnings [Member]
Accumulated Other Comprehensive Income (Loss) [Member]
Total
Balance at Dec. 31, 2021 $ 24 $ 3,959 $ (9,773) $ 58,664 $ (1,373) $ 51,501
Balance (in shares) at Dec. 31, 2021           8,547,335
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Stock-based compensation expense 0 1,060 0 0 0 $ 1,060
Issuance of restricted stock $ 0 0 0 0 0 0
Issuance of restricted stock (in shares) 140,277          
Purchase of vested stock for employee payroll tax $ 0 0 0 0 0 0
Purchase of vested stock for employee payroll tax (in shares) (34,362)          
Repurchase of common stock $ (1) (1,797) 0 0 0 (1,798)
Repurchase of common stock (in shares) (360,100)          
Net income $ 0 0 0 1,227 0 1,227 [1]
Foreign currency translation adjustments, net of tax 0 0 0 0 (527) (527)
Balance at Dec. 31, 2022 23 3,222 (9,773) 59,891 (1,900) $ 51,463
Balance (in shares) at Dec. 31, 2022           8,293,150
Increase (Decrease) in Stockholders' Equity [Roll Forward]            
Stock-based compensation expense 0 770 0 0 0 $ 770
Issuance of restricted stock $ 0 0 0 0 0 0
Issuance of restricted stock (in shares) 108,796          
Repurchase of common stock $ 0 (11)       (11)
Repurchase of common stock (in shares) (2,701)          
Net income $ 0 0 0 3,768 0 3,768 [1]
Foreign currency translation adjustments, net of tax 0 0 0 0 356 356
Balance at Dec. 31, 2023 $ 23 $ 3,981 $ (9,773) $ 63,659 $ (1,544) $ 56,346
Balance (in shares) at Dec. 31, 2023           8,399,245
[1] For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.
XML 21 R7.htm IDEA: XBRL DOCUMENT v3.24.1
DESCRIPTION OF BUSINESS
12 Months Ended
Dec. 31, 2023
DESCRIPTION OF BUSINESS [Abstract]  
DESCRIPTION OF BUSINESS
1.  DESCRIPTION OF BUSINESS

Tandy Leather Factory, Inc. (“TLF,” “we,” “our,” “us,” the “Company,” “Tandy,” or “Tandy Leather” mean Tandy Leather Factory, Inc., together with its subsidiaries) is one of the world’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.

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.

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.  We produce leather lace, cut leather pieces and most of the do-it-yourself kits that are sold in our stores and on our websites.  We also offer production services to our business customers such as cutting (“clicking”) and splitting and some assembly.   We maintain our principal offices at 1900 Southeast Loop 820, Fort Worth, Texas 76140.

The Company currently operates a total of 102 retail stores.  There are 91 stores in the United States (“U.S.”), ten stores in Canada and one store in Spain.

The Company’s common shares currently trade on Nasdaq Capital Market under the symbol “TLF.”

We operate as a single segment and report on a consolidated basis.
XML 22 R8.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES
12 Months Ended
Dec. 31, 2023
SIGNIFICANT ACCOUNTING POLICIES [Abstract]  
SIGNIFICANT ACCOUNTING POLICIES
2.  SIGNIFICANT ACCOUNTING POLICIES

Management estimates and reporting

The preparation of the Company’s Consolidated Financial Statements in accordance with accounting principles generally accepted in the United States (“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’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.  The policies discussed below require estimates that contain a significant degree of judgement.  The use of estimates is pervasive throughout the Consolidated Financial Statements, but the accounting policies and estimates considered most significant are as follows.

Principles of consolidation

Our Consolidated Financial Statements include the accounts of Tandy Leather Factory, Inc. and its active wholly-owned subsidiaries, The Leather Factory, L.P. (a Texas limited partnership), Tandy Leather Company, L.P. (a Texas limited partnership), The Leather Factory of Canada, Ltd. (a Canadian corporation), and Tandy Leather Factory España, S.L. (a Spanish corporation).  All intercompany accounts and transactions have been eliminated in consolidation.

Deconsolidation of Foreign Subsidiaries

The UK and Australia entities were legally terminated in 2023 and as a result of the termination, we deconsolidated our UK and Australia entities and the impact of the deconsolidation resulted in a $0.5 million loss that is reported as part of “Other, net” on the consolidated statement of operations and comprehensive income.
 
Correction of an error in previously issued financial statements

The 2022 consolidated financial statements included an out of period adjustment that was the result of unreconciled inventory receipts for in-transit inventory, which were identified in the fourth quarter of 2022. We corrected misstatements in the first three quarters of fiscal year 2023 as disclosed in our 2022 10-K, we reduced inventory and accounts payable balances by approximately $0.9 million, and adjusted changes to inventory and accounts payable in the operating activities section of the consolidated statements of cash flows by the same amount. There is no impact of this adjustment to the consolidated statements of operations and comprehensive income or retained earnings.

Cash and cash equivalents

The Company considers investments with a maturity when purchased of three months or less to be cash equivalents.  All credit card, debit card and electronic transfer transactions that process in less than ninety days including our T-Bills are classified as cash and cash equivalents.

Accounts receivable and expected credit losses

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 for doubtful accounts.  Accounts receivable are generally due within 30 days of invoicing.  Our accounts receivable balance as of December 31, 2023, December 31, 2022 and January 1, 2022 was $0.3 million, $0.4 million, and $0.6 million, respectively.

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 December 31, 2023, 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 December 31, 2023, December 31, 2022, and January 1, 2022 each totaled less than $0.1 million.

Foreign currency translation and transactions

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 are recorded in stockholders’ equity, net of tax.  For the years ended December 31, 2023 and 2022, we recorded foreign currency translation gain of $0.4 million and loss adjustments of $0.5 million, respectively.

The deconsolidation of the UK and Australia entities resulted in a $0.5 million loss reclassification adjustment out of accumulated other comprehensive income (loss) which is reported net within the “Foreign currently translation gain (loss), net”.

Gains and losses resulting from foreign currency transactions are recorded in other, net within the statements of operations and comprehensive income.

Revenue recognition

Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at the store counter, (2) shipment of product generally via web sales, and (3) sales of product directly to commercial customers through our commercial account representatives.  We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise over to a customer. At the store counter, our performance obligation is met, and revenue is recognized when a sales transaction occurs with a customer.  Our performance obligation for 2) and 3) are met when merchandise is shipped to a customer, and revenue is recognized when control passes to the customer.  Shipping terms are normally free on board (“FOB”) shipping point and control passes when the merchandise is shipped to the customer.  Sales tax and comparable foreign tax is excluded from net sales, while shipping charged to our customers is included in net sales.  Net sales is based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.  As of December 31, 2022, January 1, 2023, and December 31, 2023, we had received approximately $0.3 million, $0.3 million, and $0.3 million in credit card payments that had not shipped as of the end of the year and this was recorded in deferred revenue under other liabilities on the Balance Sheet.

The sales return allowance included in accrued expense and other liabilities was $0.2 million, $0.1 million, and $0.2 million as of December 31, 2023 and 2022 and January 1, 2022 respectively.  The estimated value of merchandise expected to be returned included in other current assets was less than $0.1 million as of December 31, 2023 and 2022 and January 1, 2022.

We 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. We include our gift card liability in accrued expenses and other liabilities.  On January 1, 2023, the opening balance of the gift card liability was $0.3 million.  During 2023, we issued $0.5 million of gift cards, and $0.5 million of gift cards were redeemed and recognized as revenue. At December 31, 2023, our gift card liability balance was $0.2 million. On January 1, 2022 and December 31, 2022, the gift card liability was $0.4 and $0.3 million respectively.

Disaggregated revenue

In the following table, revenue for the years ended December 31, 2023 and 2022 is disaggregated by geographic areas as follows:

(in thousands)
 
2023
   
2022
 
United States
 
$
67,696
   
$
71,665
 
Canada
    7,301       7,393  
Other
    1,232       1,277  
Net sales
 
$
76,229
   
$
80,335
 

Geographic sales information is based on the location where the order was fulfilled.

Discounts

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 classes 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.

Operating expense

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.

Property and equipment, net of accumulated depreciation

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 three to ten years for equipment and machinery, seven 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.

Inventory

Inventory is stated at the lower of first-in, first-out (“FIFO”) cost or net realizable value, and the 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.  Assembled 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 assembly 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.

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 (“UV”) 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.  Since the determination of net realizable value of inventory involves both estimation and judgement 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.

The majority of inventory purchases and commitments are made in U.S. dollars in order to limit the Company’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.

Inventory is physically counted twice annually in the Texas distribution center.  At the store level, inventory is physically counted each quarter.  Inventory is then adjusted in our accounting system to reflect actual count results.

Leases

We lease certain real estate for our retail store locations and warehouse equipment for our Texas distribution center, both under long-term lease agreements.  We determine if an arrangement is a lease at inception and recognize right-of-use (“ROU”) assets and lease liabilities at commencement date based on the present value of the lease payments over the lease term.  We elected not to record leases with an initial term of 12 months or less on the balance sheet for all our asset classes. The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term.

For operating leases, the present value of our lease payments 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.  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.

We recognize rent expense related to our operating leases on a straight-line basis over the lease term.  Rent expense is recorded in operating expenses.

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.  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. The remaining asset balance in our finance lease is only residual value and only an insignificant interest expense of less than $100 dollars was incurred and is recorded on the consolidated statements of operations and comprehensive income.

None of our lease agreements contain material residual value guarantees or material restrictive covenants.  We do not have any contingent rental payment agreements. On September 8, 2022, we entered into a concession agreement for our store on the Fort Liberty (formerly Fort Bragg) military base in which the concession payment was based on a sliding scale percentage of sales.  At the end of November, 2023, we closed that store. We have no sublease agreements and no lease agreements in which we are named as a lessor.  Refer to Note 4, Leases for further discussion of the Company’s leases.

Impairment of long-lived assets

We evaluate long-lived assets on a quarterly basis to identify events or changes in circumstances (“triggering events”) that indicate the carrying value of certain assets may not be recoverable.  Upon the occurrence of a triggering event, right-of-use (“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’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.

For the years ended December 31, 2023 and 2022, no impairment expense was recognized.

Earnings per share

Basic earnings per share (“EPS”) 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’s restricted stock plan, had been issued.  Anti-dilutive securities represent potentially dilutive securities which are excluded from the computation of diluted EPS as their impact would be anti-dilutive.  Diluted EPS is computed using the treasury stock method.

(in thousands, except share data)
 
 2023
   
2022
 
             
Numerator:
           
Net income
 
$
3,768
   
$
1,227
                 
Denominator:
               
Basic weighted-average common shares outstanding
   
8,339,658
     
8,363,390
 
Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan
   
3,218
     
8,735
 
Dilutive effect of service-based restricted stock awards granted to employees under the Plan
    27,100       22,442  
Diluted weighted-average common shares outstanding
    8,369,976       8,394,567  

(1) For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.

For additional disclosures regarding restricted stock awards and employee stock options, see Note 10, Stockholders’ Equity – Equity Compensation Plans.

Other intangible assets

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 in each of 2023 and 2022 and was recorded in operating expenses.  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. Our Other intangible assets” was fully amortized as of December 31, 2023 and is now included in “Other assets” on the face of the balance sheet.

Fair value of financial instruments

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:


Level 1 – observable inputs that reflect quoted prices in active markets for identical assets or liabilities.


Level 2 – 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.


Level 3 – significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.

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.

Our principal financial instruments consist of our money market investment or T-Bills maturing less than 90 days, accounts receivable, and accounts payable.  As of December 31, 2023 and 2022, 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 years ended December 31, 2023 and 2022.

Income taxes

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.

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.

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.

We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgement 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.

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.

Stock-based compensation

The Company’s stock-based compensation relates primarily to restricted stock unit (“RSU”) 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’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.

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.

Comprehensive income

Comprehensive income includes net income and certain other items that are recorded directly to stockholders’ equity.  The Company’s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.

Shipping and handling costs

Costs to ship products from our stores to our customers are included in operating expenses on the Consolidated Statements of Operations and Comprehensive Income.  Total costs were $3.2 million and $3.5 million for the years ended December 31, 2023, and 2022, respectively.

Advertising

Advertising costs include the cost of print, digital, direct mail, community events, trade shows, and our e-commerce platform.  Advertising costs are expensed as incurred.  Total advertising expense was $1.1 million and $1.2 million in 2023 and 2022, respectively.

Recently Adopted Accounting Pronouncements

The Company did not adopt any new accounting guidance that was applicable for the year ended December 31, 2023.
XML 23 R9.htm IDEA: XBRL DOCUMENT v3.24.1
BALANCE SHEET COMPONENTS
12 Months Ended
Dec. 31, 2023
BALANCE SHEET COMPONENTS [Abstract]  
BALANCE SHEET COMPONENTS
3.  BALANCE SHEET COMPONENTS

Inventory

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
On hand:
           
Finished goods held for sale
 
$
33,350
   
$
35,234
 
Raw materials and work in process
   
1,774
     
925
 
Inventory in transit
   
2,869
     
2,068
 
TOTAL
 
$
37,993
   
$
38,227
 

Property and Equipment

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
Building   $ 9,277     $ 9,266  
Land
   
1,451
     
1,451
 
Leasehold improvements
   
1,875
     
1,870
 
Equipment and machinery
   
8,469
     
7,931
 
Furniture and fixtures
   
7,452
     
7,471
 
Vehicles
   
154
     
135
 
     
28,678
     
28,124
 
Less: accumulated depreciation
   
(18,131
)
   
(16,962
)
TOTAL
 
$
10,547
   
$
11,162
 

Our property and equipment, net, was located in the following countries:

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
United States
 
$
10,414
   
$
10,989
 
Canada
   
133
     
173
 
Spain
   
-
     
-
 
   
$
10,547
   
$
11,162
 

Depreciation expense was $1.2 million and $1.2 million for the years ended December 31, 2023 and 2022, respectively.

Short-term Liabilities

Accrued Expenses and Other Liabilities
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
           
Accrued employee related costs
   
992
     
977
 
Unearned gift card revenue
   
223
     
256
 
Estimated returns
   
523
     
527
 
Sales and payroll taxes payable
   
1,141
     
693
 
Accrued vendor payables
    261      
228
 
TOTAL
 
$
3,140
   
$
2,681
 
XML 24 R10.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES
12 Months Ended
Dec. 31, 2023
LEASES [Abstract]  
LEASES
4.  LEASES

The Company leases certain real estate and warehouse equipment under long-term lease agreements.

The Company performs interim reviews of its operating and finance lease assets for impairment when evidence exists that the carrying value of an asset group, including a lease asset, may not be recoverable. The Company recognized no impairment expense related to its operating lease assets during the year ended December 31, 2023 or December 31, 2022.

Additional information regarding the Company’s operating and finance leases is as follows (in thousands, except for lease term and discount rate information):

Leases
 
Balance Sheet Classification
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
               
Assets:
               
Operating
 
Operating lease assets
 
$
8,995
   
$
9,742
 
Finance
 
Financing lease assets
   
23
     
31
 
Total assets
     
$
9,018
   
$
9,773
 
                     
Liabilities:
                   
Current
                   
Operating
 
Current portion of operating lease liabilities
 
$
3,172
   
$
2,881
 
Finance
 
Current portion of finance lease liabilities
   
-
     
15
 
Non-current
                   
Operating
 
Operating lease liabilities, non-current
   
6,253
     
7,469
 
Finance
 
Finance lease liabilities, non-current
   
1
     
1
 
Total lease liabilities
     
$
9,426
   
$
10,366
 


Lease Cost
 
Income Statement Classification
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
               
Operating lease cost
 
Operating expenses
  $ 3,908     $ 3,737  
Operating lease cost
 
Impairment expense
    -       -  
Short-term lease cost
 
Operating expenses
    -       38  
Variable lease cost (1)
 
Operating expenses
    915       797  
Amortization of finance lease assets
 
Operating expenses
    7       7  
Interest on lease liabilities
 
Interest expense
    -       1  
Total lease cost
      $ 4,830     $ 4,580  

(1) Variable lease cost includes payment for certain real estate taxes, insurance, common area maintenance, and other charges related to lease agreements, which are not included in the measurement of the operating lease liabilities.

   
December 31, 2023
 
Maturity of Lease Liabilities
 
Operating Leases
   
Finance Leases
 
(in thousands)
           
2024
 
$
3,687
    $ -  
2025
   
2,755
      -
 
2026
   
2,103
      -  
2027
   
1,577
      -  
2028
   
731
      -  
Thereafter
   
275
      -  
Total lease payments
 
$
11,128
    $ -  
Less:  Interest
   
(1,702
)
    -  
Present value of lease liabilities
 
$
9,426
    $ -  

Other Information
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
           
Cash paid for amounts included in the measurement of lease liabilities:
           
Operating cash flows used in operating leases
 
$
3,955
   
$
3,871
 
Operating cash flows used in finance leases
   
-
     
1
 
Financing cash flows used in finance leases
   
15
     
14
 

Lease Term and Discount Rate
 
December 31, 2023
   
December 31, 2022
 
Weighted-average remaining lease term (years):
           
Operating leases
    3.6
      4.8
 
Finance leases
    0.0
      0.9
 
Weighted-average discount rate:
               
Operating leases
    4.8
%
    5.0
%
Finance leases
    6.0
%
    6.0
%
XML 25 R11.htm IDEA: XBRL DOCUMENT v3.24.1
NOTES PAYABLE AND LONG-TERM DEBT
12 Months Ended
Dec. 31, 2023
NOTES PAYABLE AND LONG-TERM DEBT [Abstract]  
NOTES PAYABLE AND LONG-TERM DEBT
5.  NOTES PAYABLE AND LONG-TERM DEBT

During the second quarter of 2020, the Company borrowed $0.4 million from Banco Santander S.A. under the Institute of Official Credit Guarantee for Small and Medium-sized Enterprises in order to facilitate the continuation of employment and to attenuate the economic effects of the coronavirus (“COVID-19”) virus.  This loan was provided for by the Spanish government as part of a COVID-19 relief program, and on June 6, 2022, the Company repaid this loan in full.

On January 3, 2023, the Company entered into a credit agreement (the “Credit Agreement”) with JPMorgan Chase Bank, N.A.  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.  As security for the credit facility, the Company has pledged as collateral certain of its assets, including the Company’s cash in deposit accounts, inventory and equipment.  As of the date of this filing, no funds had been borrowed under this facility.
XML 26 R12.htm IDEA: XBRL DOCUMENT v3.24.1
EMPLOYEE BENEFIT AND SAVINGS PLANS
12 Months Ended
Dec. 31, 2023
EMPLOYEE BENEFIT AND SAVINGS PLANS [Abstract]  
EMPLOYEE BENEFIT AND SAVINGS PLANS
6.  EMPLOYEE BENEFIT AND SAVINGS PLANS

We have a 401(k) plan to provide retirement benefits for our employees.  As allowed under Section 401(k) of the Internal Revenue Code, the plan provides tax-deferred salary contributions for eligible employees and allows employees to contribute a percentage of their annual compensation to the plan on a pretax basis.  Employee contributions are limited to a maximum annual amount as set periodically by the Internal Revenue Code.  In 2023 and 2022, we matched 100% of the pretax employee contributions on the first 3% of eligible earnings and 50% of the pretax employee contributions on the next 2% of eligible earnings that are contributed by employees.  For the years ended December 31, 2023, and 2022, we recorded employer match expense of $0.3 million and $0.3 million, respectively.

The plan allows employees who meet the age requirements and reach the plan contribution limits to make a catch-up contribution. The catch-up contributions are not eligible for matching contributions.  In addition, the plan provides for discretionary matching contributions as determined by the Board of Directors.  There were no discretionary matching contributions made in 2023 or 2022.

We offer no postretirement or postemployment benefits to our employees.
XML 27 R13.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES
12 Months Ended
Dec. 31, 2023
INCOME TAXES [Abstract]  
INCOME TAXES
7.  INCOME TAXES

The provision for income taxes consists of the following:

(in thousands)
 
Year Ended December 31,
 
Income Tax Benefit
 
2023
   
2022
 
Current provision (benefit):
           
Federal
 
$
892
   
$
16
 
State
   
181
     
41
 
Foreign
   
102
     
96
 
Related to UTP
   
(34
)
   
28
 
     
1,141
     
181
 
                 
Deferred provision (benefit):                
Federal
    (266 )     -  
State     (103 )     -  
Foreign     5       -  
      (364 )     -  
                 
Total tax provision (benefit)
  $ 777     $ 181  

Earnings occurring outside the U.S. are deemed to be indefinitely reinvested outside of the U.S. to support the Company’s foreign operations.  As a result, if the Company accumulates earnings overseas, they will be used for investment in the Company’s businesses outside the U.S.  The Company will use cash generated from U.S. operations and short- and long-term borrowings to meet the Company’s U.S. cash needs.  The determination of unrecognized deferred tax liabilities for temporary differences in investments in foreign subsidiaries is not practicable.

The Company has $0.7 million of state tax net operating loss (“NOL”) carryovers which will begin to expire in 2025.  We also have a full valuation allowance on $0.6 million of foreign tax NOL carryovers that do not expire.

Income before income taxes was earned in the following tax jurisdictions:

(in thousands)
 
Year Ended December 31,
 
Income (Loss) Before Income Taxes
 
2023
   
2022
 
United States
 
$
3,765
   
$
733
 
Spain
   
25
   
(83
)
Canada
   
755
     
758
TOTAL
 
$
4,545
   
$
1,408
 

The income tax effects of temporary differences that give rise to significant portions of deferred income tax assets and liabilities are as follows:

Deferred income tax assets:
 
2023
   
2022
 
(in thousands)
           
Inventory
 
$
412
   
$
471
 
Stock-based compensation
   
55
     
93
 
Accounts receivable
   
8
     
14
 
Sales returns
   
49
     
47
 
Foreign currency translation gain/loss in OCI
   
512
     
689
 
Net operating losses
   
182
     
261
 
Accrued expenses
   
170
     
63
 
Leases
   
108
     
152
 
Total deferred income tax assets
   
1,496
     
1,790
 
Less:  valuation allowance
   
(154
)
   
(1,151
)
Total deferred income tax assets, net of valuation allowance
 
$
1,342
   
$
639
 
                 
Property and equipment depreciation
 
$
471
   
$
639
 
Total deferred income tax liabilities
   
471
     
639
 
                 
Net deferred tax asset (liability)
 
$
871
   
$
-
 

We are required to reduce deferred tax assets by a valuation allowance if, based on the weight of the available evidence, it is more likely than not that all or a portion of a deferred tax asset will not be realized. The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income during the periods in which those temporary differences are deductible.

As of each reporting date, the Company considers new evidence, both positive and negative, that could affect its view of the future realization of deferred tax assets.   As of December 31, 2023, management determined that there is sufficient positive evidence to conclude that it is more likely than not that additional deferred taxes of $1.3 million are realizable.  We reduced the valuation allowance accordingly.

Our effective tax rate differs from the federal statutory rate primarily due to U.S. state income tax expense, the difference in tax rates for loss carryback periods, foreign income/loss positions, expenses that are nondeductible for tax purposes, the change in our valuation allowance associated with our deferred tax assets, and differences in tax rates.  Below is a reconciliation of our effective tax rate from the statutory rate:

   
Year Ended December 31,
 
    2023    
2022
 
Statutory rate – Federal U.S. income tax
   
21.0
%
   
21.0
%
State and local taxes
   
5.3
%
   
(0.6
)%
Permanent book/tax differences
   
2.4
%
   
11.3
%
Change in valuation allowance
   
(6.8
)%
   
(20.3
)%
Interest on Uncertain Tax Position
   
(0.8
)%
   
2.0
%
Income tax credits
    (2.3 )%     -  
Other, net
   
(1.7
)%
   
(0.5
)%
Effective rate
   
17.1
%
   
12.9
%

We file a consolidated U.S. income tax return as well as state tax returns on a consolidated, combined, or stand-alone basis, depending on the jurisdiction.  We are no longer subject to U.S. federal income tax examinations by tax authorities for years prior to the tax year ended December 2021.  Depending on the jurisdiction, we are no longer subject to state examinations by tax authorities for years prior to the December 2020 and December 2021 tax years. We file tax returns in a limited number of foreign jurisdictions.

A reconciliation of the beginning and ending amount of uncertain tax positions (“UTP”) is as follows:

 
2023
   
2022
 
UTP at beginning of the year
 
$
450
   
$
415
 
Gross (decrease) increase to tax positions in current period
   
(27
)
   
7
 
Interest expense
   
(35
)
    28  
UTP at end of year
 
$
388
   
$
450
 
XML 28 R14.htm IDEA: XBRL DOCUMENT v3.24.1
COMMITMENTS AND CONTINGENCIES
12 Months Ended
Dec. 31, 2023
COMMITMENTS AND CONTINGENCIES [Abstract]  
COMMITMENTS AND CONTINGENCIES
8.  COMMITMENTS AND CONTINGENCIES

Legal Proceedings

We are periodically involved in various 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.

Delisting of the Company’s Common Stock

After discovery of the accounting matters described in previous Security and Exchange Commission filings and during our resulting financial restatement, the Company did not file its periodic financial reports with the SEC.  As a result, Nasdaq suspended trading of the Company’s stock in August 2020 and formally de-listed the stock from the Nasdaq markets in February 2021.  After being de-listed from Nasdaq, the Company’s stock traded in the Over The Counter Markets until September l, 2022, when Nasdaq again approved it for listing.  The Company’s stock currently trades on the Nasdaq Capital Market under the symbol TLF.
XML 29 R15.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK
12 Months Ended
Dec. 31, 2023
SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK [Abstract]  
SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK
9.  SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK

Major Customers

Our revenues are derived from a diverse group of customers, from hobbyist crafters to small and large businesses across a wide variety of industries.  No single customer accounted for more than 0.5% of our consolidated revenues in 2023 or 2022, and sales to our five largest customers represented less than 2.0% of consolidated revenues in each of those years.  While we do not believe the loss of one of these customers would have a significant negative impact on our operations, we do believe the loss of several of these customers simultaneously or a substantial reduction in sales generated by them could temporarily affect our operating results.

Major Suppliers

We purchase merchandise and raw materials from nearly 150 suppliers from the United States and approximately 20 foreign countries.  In general, our 10 largest suppliers account for approximately 55% of our inventory purchases, and we had one supplier in 2023 who represented more than 10% of our purchases.

Credit Risk

Due to the large number of customers comprising our customer base, concentrations of credit risk with respect to customer receivables are limited. The top two customers as of December 31, 2023, and 2022, represented 8.0% and 10.0% of net accounts receivable balance, respectively. These top two customers were also current as of these same dates. We do not generally require collateral for accounts receivable, but we do perform periodic credit evaluations of our customers and believe the allowance for doubtful accounts is adequate.  It is our opinion that if any one or a group of customer receivable balances should be deemed uncollectable, it would not have a material adverse effect on our results of operations or financial condition.

We maintain a majority of our cash in marketable securities and bank deposit accounts that, at times, may exceed federally insured limits.  We have not experienced any losses in such accounts.  We believe we are not exposed to any significant credit risk on our cash and cash equivalents.
XML 30 R16.htm IDEA: XBRL DOCUMENT v3.24.1
STOCKHOLDERS' EQUITY
12 Months Ended
Dec. 31, 2023
STOCKHOLDERS' EQUITY [Abstract]  
STOCKHOLDERS' EQUITY
10.  STOCKHOLDERS’ EQUITY

Equity Compensation Plans

The Tandy Leather Factory, Inc. 2013 Restricted Stock Plan (the “2013 Plan”) 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 of our common stock for restricted stock unit (“RSU”) 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 through 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.  In June 2022, as part of their annual director compensation, certain of our non-employee directors were granted a total of 14,000 service-based RSUs under the 2013 Plan, which will vest ratably over the next four years provided that the participant is still on the board on the vesting date.

The Tandy Leather Factory, Inc. 2023 Incentive Stock Plan (the “2023 Plan”) was adopted by our Board of Directors in April 2023 and approved by our stockholders in June 2023.  The 2023 Plan initially reserved up to 1,000,000 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.  In June 2023, as part of their annual director compensation, certain of our non-employee directors were granted a total of 12,993 service-based RSUs under the 2023 Plan, which will vest ratably over the next four years, subject to each participant’s continues service on the board as of each vesting date.  In October 2023, the Company granted to Ms. Carr a total of 276,000 service-based RSUs under the 2023 Plan, which will vest ratably over the next three years, subject to Ms. Carr’s continued employment as of each vesting date.

In addition to grants under the Company’s equity compensation plans, in October 2018 we granted a total of 644,000 RSUs to the Company’s Chief Executive Officer (“CEO”), of which (i) 460,000 are service-based RSUs that vest ratably over a period of five years from the grant date based on our CEO’s continued employment in her role, (ii) 92,000 are performance-based RSUs that will vest if the Company’s operating income exceeds $12 million dollars two fiscal years in a row, and (iii) 92,000 are performance-based RSUs that will vest if the Company’s operating income exceeds $14 million dollars in one fiscal year.  As of December 31, 2023, the Company has concluded that the performance conditions related to these performance-based RSUs was not achieved, and as a result no compensation expense related to these performance-based RSUs has been recorded.

A summary of the activity for restricted stock and RSU awards is as follows:

  Shares   Weighted Average  
  (in thousands)   Share Price  
Balance, January 1, 2023
   
441
   
$
6.46
 
Granted
   
290
     
4.25
 
Forfeited
   
(2
)
   
5.00
 
Vested
   
(106
)
   
6.51
 
Balance, December 31, 2023
   
623
   
$
5.12
 

The Company’s stock-based compensation relates to restricted stock and RSU awards.  For these service-based awards, our stock-based compensation expense, included in operating expenses, was $0.8 million and $1.1 million in 2023 and 2022, respectively.

As of December 31, 2023, the Company has concluded it is not probable that the performance conditions related to the performance-based RSUs described above will be achieved, and as a result no compensation expense related to performance-based RSUs has been recorded.

As of December 31, 2023, there was unrecognized compensation cost related to non-vested, service-based awards of $1.4 million which will be recognized over 3.1 weighted average years in each of the following years:

Unrecognized Expense
 
2024
 

571
 
2025
   
468
 
2026
   
314
 
2027     7  
   
$
1,360
 

We issue shares from authorized shares upon the lapsing of vesting restrictions on restricted stock and RSUs.  In 2023 and 2022, we issued 108,796 and 140,277 shares, respectively net of shares withheld to pay participants’ income taxes, resulting from the vesting of restricted stock and RSUs.  We do not use cash to settle equity instruments issued under stock-based compensation awards.

Share Repurchase Program

On August 9, 2020, the Board of Directors approved a program to repurchase up to $5.0 million of its common stock between August 9, 2020 and July 31, 2022.  This program expired in July 2022.  On August 8, 2022, the Board of Directors approved a new program to repurchase up to $5.0 million of the Company’s common stock between that date and August 31, 2024.  As of December 31, 2022 and December 31, 2023, $5.0 million remained available for repurchase under this new program.

On April 11, 2022, we entered into an agreement with two institutional shareholders of the Company to repurchase 359,500 shares of our common stock, par value $0.0024 in a private transaction. The purchase price was $5.00 per share for a total of $1.8 million. The closing of the repurchases took place on April 22, 2022, and these shares were subsequently cancelled. Prior to the repurchase, the shares represented approximately 4.2% of our outstanding common stock.
The direct share repurchase transactions were separately authorized by our Board of Directors and did not reduce the remaining amount authorized to be repurchased under the plans described above.  In July 2022, the Company repurchased 600 shares of stock under the open market plan.
XML 31 R17.htm IDEA: XBRL DOCUMENT v3.24.1
Insider Trading Arrangements
3 Months Ended
Dec. 31, 2023
Insider Trading Arrangements [Line Items]  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
XML 32 R18.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES (Policies)
12 Months Ended
Dec. 31, 2023
SIGNIFICANT ACCOUNTING POLICIES [Abstract]  
Management estimates and reporting
Management estimates and reporting

The preparation of the Company’s Consolidated Financial Statements in accordance with accounting principles generally accepted in the United States (“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’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.  The policies discussed below require estimates that contain a significant degree of judgement.  The use of estimates is pervasive throughout the Consolidated Financial Statements, but the accounting policies and estimates considered most significant are as follows.
Principles of consolidation
Principles of consolidation

Our Consolidated Financial Statements include the accounts of Tandy Leather Factory, Inc. and its active wholly-owned subsidiaries, The Leather Factory, L.P. (a Texas limited partnership), Tandy Leather Company, L.P. (a Texas limited partnership), The Leather Factory of Canada, Ltd. (a Canadian corporation), and Tandy Leather Factory España, S.L. (a Spanish corporation).  All intercompany accounts and transactions have been eliminated in consolidation.
Deconsolidation of Foreign Subsidiaries
Deconsolidation of Foreign Subsidiaries

The UK and Australia entities were legally terminated in 2023 and as a result of the termination, we deconsolidated our UK and Australia entities and the impact of the deconsolidation resulted in a $0.5 million loss that is reported as part of “Other, net” on the consolidated statement of operations and comprehensive income.
Correction of an error in previously issued financial statements
Correction of an error in previously issued financial statements

The 2022 consolidated financial statements included an out of period adjustment that was the result of unreconciled inventory receipts for in-transit inventory, which were identified in the fourth quarter of 2022. We corrected misstatements in the first three quarters of fiscal year 2023 as disclosed in our 2022 10-K, we reduced inventory and accounts payable balances by approximately $0.9 million, and adjusted changes to inventory and accounts payable in the operating activities section of the consolidated statements of cash flows by the same amount. There is no impact of this adjustment to the consolidated statements of operations and comprehensive income or retained earnings.
Cash and cash equivalents
Cash and cash equivalents

The Company considers investments with a maturity when purchased of three months or less to be cash equivalents.  All credit card, debit card and electronic transfer transactions that process in less than ninety days including our T-Bills are classified as cash and cash equivalents.
Accounts receivable and expected credit losses
Accounts receivable and expected credit losses

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 for doubtful accounts.  Accounts receivable are generally due within 30 days of invoicing.  Our accounts receivable balance as of December 31, 2023, December 31, 2022 and January 1, 2022 was $0.3 million, $0.4 million, and $0.6 million, respectively.

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 December 31, 2023, 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 December 31, 2023, December 31, 2022, and January 1, 2022 each totaled less than $0.1 million.
Foreign currency translation and transactions
Foreign currency translation and transactions

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 are recorded in stockholders’ equity, net of tax.  For the years ended December 31, 2023 and 2022, we recorded foreign currency translation gain of $0.4 million and loss adjustments of $0.5 million, respectively.

The deconsolidation of the UK and Australia entities resulted in a $0.5 million loss reclassification adjustment out of accumulated other comprehensive income (loss) which is reported net within the “Foreign currently translation gain (loss), net”.

Gains and losses resulting from foreign currency transactions are recorded in other, net within the statements of operations and comprehensive income.
Revenue recognition
Revenue recognition

Our revenue is earned from sales of merchandise and generally occurs via three methods: (1) at the store counter, (2) shipment of product generally via web sales, and (3) sales of product directly to commercial customers through our commercial account representatives.  We recognize revenue when we satisfy the performance obligation of transferring control of product merchandise over to a customer. At the store counter, our performance obligation is met, and revenue is recognized when a sales transaction occurs with a customer.  Our performance obligation for 2) and 3) are met when merchandise is shipped to a customer, and revenue is recognized when control passes to the customer.  Shipping terms are normally free on board (“FOB”) shipping point and control passes when the merchandise is shipped to the customer.  Sales tax and comparable foreign tax is excluded from net sales, while shipping charged to our customers is included in net sales.  Net sales is based on the amount of consideration that we expect to receive, reduced by estimates for future merchandise returns.  As of December 31, 2022, January 1, 2023, and December 31, 2023, we had received approximately $0.3 million, $0.3 million, and $0.3 million in credit card payments that had not shipped as of the end of the year and this was recorded in deferred revenue under other liabilities on the Balance Sheet.

The sales return allowance included in accrued expense and other liabilities was $0.2 million, $0.1 million, and $0.2 million as of December 31, 2023 and 2022 and January 1, 2022 respectively.  The estimated value of merchandise expected to be returned included in other current assets was less than $0.1 million as of December 31, 2023 and 2022 and January 1, 2022.

We 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. We include our gift card liability in accrued expenses and other liabilities.  On January 1, 2023, the opening balance of the gift card liability was $0.3 million.  During 2023, we issued $0.5 million of gift cards, and $0.5 million of gift cards were redeemed and recognized as revenue. At December 31, 2023, our gift card liability balance was $0.2 million. On January 1, 2022 and December 31, 2022, the gift card liability was $0.4 and $0.3 million respectively.

Disaggregated revenue

In the following table, revenue for the years ended December 31, 2023 and 2022 is disaggregated by geographic areas as follows:

(in thousands)
 
2023
   
2022
 
United States
 
$
67,696
   
$
71,665
 
Canada
    7,301       7,393  
Other
    1,232       1,277  
Net sales
 
$
76,229
   
$
80,335
 

Geographic sales information is based on the location where the order was fulfilled.
Discounts
Discounts

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 classes 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.
Operating expense
Operating expense

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.
Property and equipment, net of accumulated depreciation
Property and equipment, net of accumulated depreciation

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 three to ten years for equipment and machinery, seven 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.
Inventory
Inventory

Inventory is stated at the lower of first-in, first-out (“FIFO”) cost or net realizable value, and the 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.  Assembled 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 assembly 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.

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 (“UV”) 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.  Since the determination of net realizable value of inventory involves both estimation and judgement 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.

The majority of inventory purchases and commitments are made in U.S. dollars in order to limit the Company’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.

Inventory is physically counted twice annually in the Texas distribution center.  At the store level, inventory is physically counted each quarter.  Inventory is then adjusted in our accounting system to reflect actual count results.
Leases
Leases

We lease certain real estate for our retail store locations and warehouse equipment for our Texas distribution center, both under long-term lease agreements.  We determine if an arrangement is a lease at inception and recognize right-of-use (“ROU”) assets and lease liabilities at commencement date based on the present value of the lease payments over the lease term.  We elected not to record leases with an initial term of 12 months or less on the balance sheet for all our asset classes. The depreciable life of related leasehold improvements is based on the shorter of the useful life or the lease term.

For operating leases, the present value of our lease payments 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.  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.

We recognize rent expense related to our operating leases on a straight-line basis over the lease term.  Rent expense is recorded in operating expenses.

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.  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. The remaining asset balance in our finance lease is only residual value and only an insignificant interest expense of less than $100 dollars was incurred and is recorded on the consolidated statements of operations and comprehensive income.

None of our lease agreements contain material residual value guarantees or material restrictive covenants.  We do not have any contingent rental payment agreements. On September 8, 2022, we entered into a concession agreement for our store on the Fort Liberty (formerly Fort Bragg) military base in which the concession payment was based on a sliding scale percentage of sales.  At the end of November, 2023, we closed that store. We have no sublease agreements and no lease agreements in which we are named as a lessor.  Refer to Note 4, Leases for further discussion of the Company’s leases.
Impairment of long-lived assets
Impairment of long-lived assets

We evaluate long-lived assets on a quarterly basis to identify events or changes in circumstances (“triggering events”) that indicate the carrying value of certain assets may not be recoverable.  Upon the occurrence of a triggering event, right-of-use (“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’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.

For the years ended December 31, 2023 and 2022, no impairment expense was recognized.
Earnings per share
Earnings per share

Basic earnings per share (“EPS”) 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’s restricted stock plan, had been issued.  Anti-dilutive securities represent potentially dilutive securities which are excluded from the computation of diluted EPS as their impact would be anti-dilutive.  Diluted EPS is computed using the treasury stock method.

(in thousands, except share data)
 
 2023
   
2022
 
             
Numerator:
           
Net income
 
$
3,768
   
$
1,227
                 
Denominator:
               
Basic weighted-average common shares outstanding
   
8,339,658
     
8,363,390
 
Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan
   
3,218
     
8,735
 
Dilutive effect of service-based restricted stock awards granted to employees under the Plan
    27,100       22,442  
Diluted weighted-average common shares outstanding
    8,369,976       8,394,567  

(1) For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.

For additional disclosures regarding restricted stock awards and employee stock options, see Note 10, Stockholders’ Equity – Equity Compensation Plans.
Other intangible assets
Other intangible assets

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 in each of 2023 and 2022 and was recorded in operating expenses.  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. Our Other intangible assets” was fully amortized as of December 31, 2023 and is now included in “Other assets” on the face of the balance sheet.
Fair value of financial instruments
Fair value of financial instruments

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:


Level 1 – observable inputs that reflect quoted prices in active markets for identical assets or liabilities.


Level 2 – 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.


Level 3 – significant unobservable inputs reflecting our own assumptions, consistent with reasonably available assumptions made by other market participants.

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.

Our principal financial instruments consist of our money market investment or T-Bills maturing less than 90 days, accounts receivable, and accounts payable.  As of December 31, 2023 and 2022, 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 years ended December 31, 2023 and 2022.
Income taxes
Income taxes

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.

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.

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.

We recognize tax liabilities for uncertain tax positions and adjust these liabilities when our judgement 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.

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.
Stock-based compensation
Stock-based compensation

The Company’s stock-based compensation relates primarily to restricted stock unit (“RSU”) 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’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.

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.
Comprehensive income
Comprehensive income

Comprehensive income includes net income and certain other items that are recorded directly to stockholders’ equity.  The Company’s only source of other comprehensive income is foreign currency translation adjustments, and those adjustments are presented net of tax.
Shipping and handling costs
Shipping and handling costs

Costs to ship products from our stores to our customers are included in operating expenses on the Consolidated Statements of Operations and Comprehensive Income.  Total costs were $3.2 million and $3.5 million for the years ended December 31, 2023, and 2022, respectively.
Advertising
Advertising

Advertising costs include the cost of print, digital, direct mail, community events, trade shows, and our e-commerce platform.  Advertising costs are expensed as incurred.  Total advertising expense was $1.1 million and $1.2 million in 2023 and 2022, respectively.
Recently Adopted Accounting Pronouncements
Recently Adopted Accounting Pronouncements

The Company did not adopt any new accounting guidance that was applicable for the year ended December 31, 2023.
XML 33 R19.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES (Tables)
12 Months Ended
Dec. 31, 2023
SIGNIFICANT ACCOUNTING POLICIES [Abstract]  
Disaggregated Revenue
In the following table, revenue for the years ended December 31, 2023 and 2022 is disaggregated by geographic areas as follows:

(in thousands)
 
2023
   
2022
 
United States
 
$
67,696
   
$
71,665
 
Canada
    7,301       7,393  
Other
    1,232       1,277  
Net sales
 
$
76,229
   
$
80,335
 
Computation of Basic and Diluted Earnings Per Share Diluted EPS is computed using the treasury stock method.

(in thousands, except share data)
 
 2023
   
2022
 
             
Numerator:
           
Net income
 
$
3,768
   
$
1,227
                 
Denominator:
               
Basic weighted-average common shares outstanding
   
8,339,658
     
8,363,390
 
Dilutive effect of service-based restricted stock awards granted to Board of Directors under the Plan
   
3,218
     
8,735
 
Dilutive effect of service-based restricted stock awards granted to employees under the Plan
    27,100       22,442  
Diluted weighted-average common shares outstanding
    8,369,976       8,394,567  

(1) For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.
XML 34 R20.htm IDEA: XBRL DOCUMENT v3.24.1
BALANCE SHEET COMPONENTS (Tables)
12 Months Ended
Dec. 31, 2023
BALANCE SHEET COMPONENTS [Abstract]  
Inventory, Property and Equipment and Short-term Liabilities
Inventory

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
On hand:
           
Finished goods held for sale
 
$
33,350
   
$
35,234
 
Raw materials and work in process
   
1,774
     
925
 
Inventory in transit
   
2,869
     
2,068
 
TOTAL
 
$
37,993
   
$
38,227
 

Property and Equipment

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
Building   $ 9,277     $ 9,266  
Land
   
1,451
     
1,451
 
Leasehold improvements
   
1,875
     
1,870
 
Equipment and machinery
   
8,469
     
7,931
 
Furniture and fixtures
   
7,452
     
7,471
 
Vehicles
   
154
     
135
 
     
28,678
     
28,124
 
Less: accumulated depreciation
   
(18,131
)
   
(16,962
)
TOTAL
 
$
10,547
   
$
11,162
 

Our property and equipment, net, was located in the following countries:

(in thousands)
 
December 31, 2023
   
December 31, 2022
 
United States
 
$
10,414
   
$
10,989
 
Canada
   
133
     
173
 
Spain
   
-
     
-
 
   
$
10,547
   
$
11,162
 

Depreciation expense was $1.2 million and $1.2 million for the years ended December 31, 2023 and 2022, respectively.

Short-term Liabilities

Accrued Expenses and Other Liabilities
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
           
Accrued employee related costs
   
992
     
977
 
Unearned gift card revenue
   
223
     
256
 
Estimated returns
   
523
     
527
 
Sales and payroll taxes payable
   
1,141
     
693
 
Accrued vendor payables
    261      
228
 
TOTAL
 
$
3,140
   
$
2,681
 
XML 35 R21.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES (Tables)
12 Months Ended
Dec. 31, 2023
LEASES [Abstract]  
Operating Lease Assets and Liabilities
Additional information regarding the Company’s operating and finance leases is as follows (in thousands, except for lease term and discount rate information):

Leases
 
Balance Sheet Classification
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
               
Assets:
               
Operating
 
Operating lease assets
 
$
8,995
   
$
9,742
 
Finance
 
Financing lease assets
   
23
     
31
 
Total assets
     
$
9,018
   
$
9,773
 
                     
Liabilities:
                   
Current
                   
Operating
 
Current portion of operating lease liabilities
 
$
3,172
   
$
2,881
 
Finance
 
Current portion of finance lease liabilities
   
-
     
15
 
Non-current
                   
Operating
 
Operating lease liabilities, non-current
   
6,253
     
7,469
 
Finance
 
Finance lease liabilities, non-current
   
1
     
1
 
Total lease liabilities
     
$
9,426
   
$
10,366
 
Lease Cost
Lease Cost
 
Income Statement Classification
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
               
Operating lease cost
 
Operating expenses
  $ 3,908     $ 3,737  
Operating lease cost
 
Impairment expense
    -       -  
Short-term lease cost
 
Operating expenses
    -       38  
Variable lease cost (1)
 
Operating expenses
    915       797  
Amortization of finance lease assets
 
Operating expenses
    7       7  
Interest on lease liabilities
 
Interest expense
    -       1  
Total lease cost
      $ 4,830     $ 4,580  

(1) Variable lease cost includes payment for certain real estate taxes, insurance, common area maintenance, and other charges related to lease agreements, which are not included in the measurement of the operating lease liabilities.
Maturity of Lease Liabilities
   
December 31, 2023
 
Maturity of Lease Liabilities
 
Operating Leases
   
Finance Leases
 
(in thousands)
           
2024
 
$
3,687
    $ -  
2025
   
2,755
      -
 
2026
   
2,103
      -  
2027
   
1,577
      -  
2028
   
731
      -  
Thereafter
   
275
      -  
Total lease payments
 
$
11,128
    $ -  
Less:  Interest
   
(1,702
)
    -  
Present value of lease liabilities
 
$
9,426
    $ -  
Operating Leases Other Information

Other Information
 
December 31, 2023
   
December 31, 2022
 
(in thousands)
           
Cash paid for amounts included in the measurement of lease liabilities:
           
Operating cash flows used in operating leases
 
$
3,955
   
$
3,871
 
Operating cash flows used in finance leases
   
-
     
1
 
Financing cash flows used in finance leases
   
15
     
14
 
Lease Term and Discount Rate
Lease Term and Discount Rate
 
December 31, 2023
   
December 31, 2022
 
Weighted-average remaining lease term (years):
           
Operating leases
    3.6
      4.8
 
Finance leases
    0.0
      0.9
 
Weighted-average discount rate:
               
Operating leases
    4.8
%
    5.0
%
Finance leases
    6.0
%
    6.0
%
XML 36 R22.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES (Tables)
12 Months Ended
Dec. 31, 2023
INCOME TAXES [Abstract]  
Provision for Income Taxes
The provision for income taxes consists of the following:

(in thousands)
 
Year Ended December 31,
 
Income Tax Benefit
 
2023
   
2022
 
Current provision (benefit):
           
Federal
 
$
892
   
$
16
 
State
   
181
     
41
 
Foreign
   
102
     
96
 
Related to UTP
   
(34
)
   
28
 
     
1,141
     
181
 
                 
Deferred provision (benefit):                
Federal
    (266 )     -  
State     (103 )     -  
Foreign     5       -  
      (364 )     -  
                 
Total tax provision (benefit)
  $ 777     $ 181  
Income Before Income Taxes
Income before income taxes was earned in the following tax jurisdictions:

(in thousands)
 
Year Ended December 31,
 
Income (Loss) Before Income Taxes
 
2023
   
2022
 
United States
 
$
3,765
   
$
733
 
Spain
   
25
   
(83
)
Canada
   
755
     
758
TOTAL
 
$
4,545
   
$
1,408
 
Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities
The income tax effects of temporary differences that give rise to significant portions of deferred income tax assets and liabilities are as follows:

Deferred income tax assets:
 
2023
   
2022
 
(in thousands)
           
Inventory
 
$
412
   
$
471
 
Stock-based compensation
   
55
     
93
 
Accounts receivable
   
8
     
14
 
Sales returns
   
49
     
47
 
Foreign currency translation gain/loss in OCI
   
512
     
689
 
Net operating losses
   
182
     
261
 
Accrued expenses
   
170
     
63
 
Leases
   
108
     
152
 
Total deferred income tax assets
   
1,496
     
1,790
 
Less:  valuation allowance
   
(154
)
   
(1,151
)
Total deferred income tax assets, net of valuation allowance
 
$
1,342
   
$
639
 
                 
Property and equipment depreciation
 
$
471
   
$
639
 
Total deferred income tax liabilities
   
471
     
639
 
                 
Net deferred tax asset (liability)
 
$
871
   
$
-
 
Reconciliation of Effective Tax Rate from Statutory Rate Below is a reconciliation of our effective tax rate from the statutory rate:

   
Year Ended December 31,
 
    2023    
2022
 
Statutory rate – Federal U.S. income tax
   
21.0
%
   
21.0
%
State and local taxes
   
5.3
%
   
(0.6
)%
Permanent book/tax differences
   
2.4
%
   
11.3
%
Change in valuation allowance
   
(6.8
)%
   
(20.3
)%
Interest on Uncertain Tax Position
   
(0.8
)%
   
2.0
%
Income tax credits
    (2.3 )%     -  
Other, net
   
(1.7
)%
   
(0.5
)%
Effective rate
   
17.1
%
   
12.9
%
Reconciliation of Uncertain Tax Positions
A reconciliation of the beginning and ending amount of uncertain tax positions (“UTP”) is as follows:

 
2023
   
2022
 
UTP at beginning of the year
 
$
450
   
$
415
 
Gross (decrease) increase to tax positions in current period
   
(27
)
   
7
 
Interest expense
   
(35
)
    28  
UTP at end of year
 
$
388
   
$
450
 
XML 37 R23.htm IDEA: XBRL DOCUMENT v3.24.1
STOCKHOLDERS' EQUITY (Tables)
12 Months Ended
Dec. 31, 2023
STOCKHOLDERS' EQUITY [Abstract]  
Activity of Restricted Stock and RSU Awards
A summary of the activity for restricted stock and RSU awards is as follows:

  Shares   Weighted Average  
  (in thousands)   Share Price  
Balance, January 1, 2023
   
441
   
$
6.46
 
Granted
   
290
     
4.25
 
Forfeited
   
(2
)
   
5.00
 
Vested
   
(106
)
   
6.51
 
Balance, December 31, 2023
   
623
   
$
5.12
 
Non-vested, Service-based Stock Awards
As of December 31, 2023, there was unrecognized compensation cost related to non-vested, service-based awards of $1.4 million which will be recognized over 3.1 weighted average years in each of the following years:

Unrecognized Expense
 
2024
 

571
 
2025
   
468
 
2026
   
314
 
2027     7  
   
$
1,360
 
XML 38 R24.htm IDEA: XBRL DOCUMENT v3.24.1
DESCRIPTION OF BUSINESS (Details)
12 Months Ended
Dec. 31, 2023
Store
Segment
Description of Business [Abstract]  
Number of stores 102
Number of operating segments | Segment 1
Number of reporting segments | Segment 1
United States [Member]  
Description of Business [Abstract]  
Number of stores 91
Canada [Member]  
Description of Business [Abstract]  
Number of stores 10
Spain [Member]  
Description of Business [Abstract]  
Number of stores 1
XML 39 R25.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Deconsolidation of Foreign Subsidiaries (Details)
$ in Millions
12 Months Ended
Dec. 31, 2023
USD ($)
Deconsolidation of Foreign Subsidiaries [Abstract]  
Loss on deconsolidation $ (0.5)
XML 40 R26.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Error Correction (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Prior Period Adjustments [Abstract]    
Inventory $ 37,993 $ 38,227
Accounts Payable 2,333 $ 3,082
Prior Period Adjustment [Member]    
Prior Period Adjustments [Abstract]    
Inventory (900)  
Accounts Payable $ (900)  
XML 41 R27.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Accounts Receivable and Expected Credit Losses [Abstract]      
Accounts receivable $ 264 $ 370 $ 600
Maximum [Member]      
Accounts Receivable and Expected Credit Losses [Abstract]      
Allowance for expected credit losses $ 100 $ 100 $ 100
XML 42 R28.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Foreign Currency Translation and Transactions (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Foreign currency translation and transactions [Abstract]    
Loss on deconsolidation $ (0.5)  
Maximum [Member]    
Foreign currency translation and transactions [Abstract]    
Foreign currency translation loss adjustments net of tax change (benefit) $ 0.4 $ (0.5)
XML 43 R29.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Revenue recognition [Abstract]      
Sales return allowance $ 200 $ 100 $ 200
Gift card redemption period 1 year    
Gift cards issued $ 500    
Revenue recognized from redemption of gift cards 500    
Disaggregated revenue [Abstract]      
Sales 76,229 80,335  
Other Liabilities [Member]      
Revenue recognition [Abstract]      
Credit card payments recorded as deferred revenue 300 300 300
Accounts Expenses and Other Liabilities [Member]      
Revenue recognition [Abstract]      
Contract with customer liability 200 300 400
United States [Member]      
Disaggregated revenue [Abstract]      
Sales 67,696 71,665  
Canada [Member]      
Disaggregated revenue [Abstract]      
Sales 7,301 7,393  
Other [Member]      
Disaggregated revenue [Abstract]      
Sales 1,232 1,277  
Maximum [Member]      
Revenue recognition [Abstract]      
Estimate of merchandise expected to be returned $ 100 $ 100 $ 100
XML 44 R30.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)
12 Months Ended
Dec. 31, 2023
Discount
Discounts [Abstract]  
Number of classes of customer discounts 6
XML 45 R31.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)
Dec. 31, 2023
Equipment and Machinery [Member] | Minimum [Member]  
Property and equipment, net of accumulated depreciation [Abstract]  
Estimated useful lives of assets 3 years
Equipment and Machinery [Member] | Maximum [Member]  
Property and equipment, net of accumulated depreciation [Abstract]  
Estimated useful lives of assets 10 years
Furniture and Fixtures [Member] | Minimum [Member]  
Property and equipment, net of accumulated depreciation [Abstract]  
Estimated useful lives of assets 7 years
Furniture and Fixtures [Member] | Maximum [Member]  
Property and equipment, net of accumulated depreciation [Abstract]  
Estimated useful lives of assets 15 years
Vehicles [Member]  
Property and equipment, net of accumulated depreciation [Abstract]  
Estimated useful lives of assets 5 years
Buildings and Related Improvements [Member]  
Property and equipment, net of accumulated depreciation [Abstract]  
Estimated useful lives of assets 40 years
XML 46 R32.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Leases (Details)
$ in Thousands
12 Months Ended
Dec. 31, 2023
USD ($)
Maximum [Member]  
Leases [Abstract]  
Remaining finance leases interest expense $ 100
XML 47 R33.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Impairment of Long-lived Assets (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Impairment of long-lived assets [Abstract]    
Impairment losses $ 0 $ 0
XML 48 R34.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Earnings Per Share (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Numerator [Abstract]    
Net income [1] $ 3,768 $ 1,227
Denominator [Abstract]    
Basic weighted-average common shares outstanding (in shares) [1] 8,339,658 8,363,390
Diluted weighted-average common shares outstanding (in shares) [1] 8,369,976 8,394,567
Shares excluded from the diluted EPS calculation (in shares) 65,075 90,748
Restricted Stock [Member] | Board of Directors [Member]    
Denominator [Abstract]    
Dilutive effect of service-based restricted stock awards granted (in shares) [1] 3,218 8,735
Restricted Stock [Member] | Employees [Member]    
Denominator [Abstract]    
Dilutive effect of service-based restricted stock awards granted (in shares) [1] 27,100 22,442
[1] For the years ended December 31, 2023 and 2022, there were 65,075 and 90,748 shares, respectively, excluded from the diluted EPS calculation because the impact of their assumed vesting would be anti-dilutive.
XML 49 R35.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Maximum [Member]    
Other Intangible Assets [Abstract]    
Amortization of intangible assets (excluding goodwill) $ 10 $ 10
Amortization expense, 2024 10  
Amortization expense, 2025 10  
Amortization expense, 2026 10  
Amortization expense, 2027 10  
Amortization expense, 2028 $ 10  
Trademarks/Copyrights [Member]    
Other Intangible Assets [Abstract]    
Weighted average amortization period 15 years  
XML 50 R36.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Fair value of financial instruments [Abstract]    
Transfers into (out of) Level 3 $ 0 $ 0
XML 51 R37.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Shipping and Handling Costs (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Shipping and handling costs [Abstract]    
Operating expenses $ 40,753 $ 45,109
Shipping and Handling [Member]    
Shipping and handling costs [Abstract]    
Operating expenses $ 3,200 $ 3,500
XML 52 R38.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT ACCOUNTING POLICIES, Advertising (Details) - USD ($)
$ in Millions
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Advertising [Abstract]    
Advertising expense $ 1.1 $ 1.2
XML 53 R39.htm IDEA: XBRL DOCUMENT v3.24.1
BALANCE SHEET COMPONENTS, Inventory, Property and Equipment (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Inventory on hand [Abstract]    
Finished goods held for sale $ 33,350 $ 35,234
Raw materials and work in process 1,774 925
Inventory in transit 2,869 2,068
Total inventory 37,993 38,227
Property and Equipment [Abstract]    
Property and equipment, gross 28,678 28,124
Less: accumulated depreciation (18,131) (16,962)
Property and equipment, net 10,547 11,162
Depreciation expense 1,200 1,200
United States [Member]    
Property and Equipment [Abstract]    
Property and equipment, net 10,414 10,989
Canada [Member]    
Property and Equipment [Abstract]    
Property and equipment, net 133 173
Spain [Member]    
Property and Equipment [Abstract]    
Property and equipment, net 0 0
Building [Member]    
Property and Equipment [Abstract]    
Property and equipment, gross 9,277 9,266
Land [Member]    
Property and Equipment [Abstract]    
Property and equipment, gross 1,451 1,451
Leasehold Improvements [Member]    
Property and Equipment [Abstract]    
Property and equipment, gross 1,875 1,870
Equipment and Machinery [Member]    
Property and Equipment [Abstract]    
Property and equipment, gross 8,469 7,931
Furniture and Fixtures [Member]    
Property and Equipment [Abstract]    
Property and equipment, gross 7,452 7,471
Vehicles [Member]    
Property and Equipment [Abstract]    
Property and equipment, gross $ 154 $ 135
XML 54 R40.htm IDEA: XBRL DOCUMENT v3.24.1
BALANCE SHEET COMPONENTS, Short-term Liabilities (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Accrued Expenses and Other Liabilities [Abstract]    
Accrued employee related costs $ 992 $ 977
Unearned gift card revenue 223 256
Estimated returns 523 527
Sales and payroll taxes payable 1,141 693
Accrued vendor payables 261 228
TOTAL $ 3,140 $ 2,681
XML 55 R41.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES, Lease Assets, Liabilities and Lease Cost (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Assets [Abstract]    
Operating lease assets $ 8,995 $ 9,742
Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Operating lease assets Operating lease assets
Financing lease assets $ 23 $ 31
Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration] Financing lease assets Financing lease assets
Total assets $ 9,018 $ 9,773
Current [Abstract]    
Current portion of operating lease liabilities $ 3,172 $ 2,881
Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Current portion of operating lease liabilities Current portion of operating lease liabilities
Current portion of finance lease liabilities $ 0 $ 15
Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration] Current portion of finance lease liabilities Current portion of finance lease liabilities
Noncurrent [Abstract]    
Operating lease liabilities, non-current $ 6,253 $ 7,469
Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration] Operating lease liabilities, non-current Operating lease liabilities, non-current
Finance lease liabilities, non-current $ 1 $ 1
Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration] Finance lease liabilities, non-current Finance lease liabilities, non-current
Total lease liabilities $ 9,426 $ 10,366
Lease Cost [Abstract]    
Operating lease asset impairment expense 0  
Finance [Abstract]    
Total lease cost 4,830 4,580
Maximum [Member]    
Finance [Abstract]    
Interest on lease liabilities 100  
ASU 2016-02 [Member] | Maximum [Member]    
Lease Cost [Abstract]    
Operating lease asset impairment expense   0
Operating Expenses [Member]    
Lease Cost [Abstract]    
Operating lease cost 3,908 3,737
Short-term lease cost 0 38
Variable lease cost [1] 915 797
Finance [Abstract]    
Amortization of finance lease assets 7 7
Impairment Expense [Member]    
Lease Cost [Abstract]    
Operating lease cost 0 0
Interest Expense [Member]    
Finance [Abstract]    
Interest on lease liabilities $ 0 $ 1
[1] Variable lease cost includes payment for certain real estate taxes, insurance, common area maintenance, and other charges related to lease agreements, which are not included in the measurement of the operating lease liabilities.
XML 56 R42.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES, Maturity of Lease Liabilities (Details)
$ in Thousands
Dec. 31, 2023
USD ($)
Maturity of Operating Lease Liabilities [Abstract]  
2024 $ 3,687
2025 2,755
2026 2,103
2027 1,577
2028 731
Thereafter 275
Total lease payments 11,128
Less: Interest (1,702)
Present value of lease liabilities 9,426
Maturities of Finance Lease Liabilities [Abstract]  
2024 0
2025 0
2026 0
2027 0
2028 0
Thereafter 0
Total lease payments 0
Less: Interest 0
Present value of lease liabilities $ 0
XML 57 R43.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES, Operating Leases Other Information (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Cash Paid for Amounts Included in the Measurement of Lease Liabilities [Abstract]    
Operating cash flows used in operating leases $ 3,955 $ 3,871
Operating cash flows used in finance leases 0 1
Financing cash flows used in finance leases $ 15 $ 14
XML 58 R44.htm IDEA: XBRL DOCUMENT v3.24.1
LEASES, Lease Term and Discount Rate (Details)
Dec. 31, 2023
Dec. 31, 2022
Weighted-Average Remaining Lease Term (Years) [Abstract]    
Operating leases 3 years 7 months 6 days 4 years 9 months 18 days
Finance leases 0 years 10 months 24 days
Weighted-Average Discount Rate [Abstract]    
Operating leases 4.80% 5.00%
Finance leases 6.00% 6.00%
XML 59 R45.htm IDEA: XBRL DOCUMENT v3.24.1
NOTES PAYABLE AND LONG-TERM DEBT (Details) - USD ($)
3 Months Ended 12 Months Ended
Jun. 30, 2020
Dec. 31, 2023
Jan. 03, 2023
JP Morgan Chase Bank, N.A. [Member]      
Debt Instruments [Abstract]      
Line of credit facility, maximum borrowing capacity     $ 5,000,000
Line of credit facility, funds borrowed   $ 0  
Institute of Official Credit Guarantee for Small and Medium-sized Enterprises [Member]      
Debt Instruments [Abstract]      
Proceeds from long-term debt $ 400,000    
XML 60 R46.htm IDEA: XBRL DOCUMENT v3.24.1
EMPLOYEE BENEFIT AND SAVINGS PLANS (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Pension and Other Postretirement Benefits Cost [Abstract]    
Defined contribution plan, employer match expense $ 300,000 $ 300,000
Employer discretionary contribution amount $ 0 $ 0
100% Contribution [Member]    
Pension and Other Postretirement Benefits Cost [Abstract]    
Employer matching contribution, percentage of match 100.00% 100.00%
Employer matching contribution, percentage of eligible earnings contributed by employees 3.00% 3.00%
50% Contribution [Member]    
Pension and Other Postretirement Benefits Cost [Abstract]    
Employer matching contribution, percentage of match 50.00% 50.00%
Employer matching contribution, percentage of eligible earnings contributed by employees 2.00% 2.00%
XML 61 R47.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES, Provision for Income Taxes (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Current provision (benefit) [Abstract]    
Federal $ 892 $ 16
State 181 41
Foreign 102 96
Related to UTP (34) 28
Total current provision 1,141 181
Deferred provision (benefit) [Abstract]    
Federal (266) 0
State (103) 0
Foreign 5 0
Total deferred provision (benefit) (364) 0
Total tax provision (benefit) 777 $ 181
State net operating loss carryovers 700  
Foreign tax net operating loss carryovers $ 600  
XML 62 R48.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES, Income Before Income Taxes (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Income (loss) before income taxes [Abstract]    
TOTAL $ 4,545 $ 1,408
United States [Member]    
Income (loss) before income taxes [Abstract]    
Income (loss) before income taxes 3,765 733
Spain [Member]    
Income (loss) before income taxes [Abstract]    
Income (loss) before income taxes 25 (83)
Canada [Member]    
Income (loss) before income taxes [Abstract]    
Income (loss) before income taxes $ 755 $ 758
XML 63 R49.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES, Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities (Details) - USD ($)
$ in Thousands
Dec. 31, 2023
Dec. 31, 2022
Deferred income tax assets [Abstract]    
Inventory $ 412 $ 471
Stock-based compensation 55 93
Accounts receivable 8 14
Sales returns 49 47
Foreign currency translation gain/loss in OCI 512 689
Net operating losses 182 261
Accrued expenses 170 63
Leases 108 152
Total deferred income tax assets 1,496 1,790
Less: valuation allowance (154) (1,151)
Total deferred income tax assets, net of valuation allowance 1,342 639
Deferred income tax liabilities [Abstract]    
Property and equipment depreciation 471 639
Total deferred income tax liabilities 471 639
Net deferred tax asset (liability) $ 871 $ 0
XML 64 R50.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES, Reconciliation of Effective Tax Rate from Statutory Rate (Details)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
INCOME TAXES [Abstract]    
Statutory rate - Federal U.S. income tax 21.00% 21.00%
State and local taxes 5.30% (0.60%)
Permanent book/tax differences 2.40% 11.30%
Change in valuation allowance (6.80%) (20.30%)
Interest on Uncertain Tax Position (0.80%) 2.00%
Income tax credits (2.30%) 0.00%
Other, net (1.70%) (0.50%)
Effective rate 17.10% 12.90%
XML 65 R51.htm IDEA: XBRL DOCUMENT v3.24.1
INCOME TAXES, Reconciliation of Uncertain Tax Positions (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Reconciliation of Uncertain Tax Positions ("UTP") [Roll Forward]    
UTP at beginning of the year $ 450 $ 415
Gross decrease to tax positions in current period (27)  
Gross increase to tax positions in current period   7
Interest expense (35) 28
UTP at end of year $ 388 $ 450
XML 66 R52.htm IDEA: XBRL DOCUMENT v3.24.1
SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK (Details)
12 Months Ended
Dec. 31, 2023
Customer
Supplier
Dec. 31, 2022
Customer
Supplier Concentration Risk [Member] | United States [Member]    
Concentration Risk [Abstract]    
Number of suppliers 150  
Supplier Concentration Risk [Member] | Foreign Countries [Member]    
Concentration Risk [Abstract]    
Number of suppliers 20  
Sales Revenue [Member] | Customer Concentration Risk [Member]    
Concentration Risk [Abstract]    
Number of customers accounted more than 0.5% of revenue | Customer 0 0
Sales Revenue [Member] | Customer Concentration Risk [Member] | Five Major Customers [Member]    
Concentration Risk [Abstract]    
Number of customers accounted more than 0.5% of revenue | Customer 5 5
Sales Revenue [Member] | Customer Concentration Risk [Member] | Five Major Customers [Member] | Maximum [Member]    
Concentration Risk [Abstract]    
Concentration risk percentage 2.00%  
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Two Major Customers [Member]    
Concentration Risk [Abstract]    
Number of customers accounted more than 0.5% of revenue | Customer 2 2
Concentration risk percentage 8.00% 10.00%
Accounts Payable [Member] | Supplier Concentration Risk [Member] | Ten Major Suppliers [Member]    
Concentration Risk [Abstract]    
Concentration risk percentage 55.00%  
Number of suppliers accounted for 55% of inventory purchases 10  
Accounts Payable [Member] | Supplier Concentration Risk [Member] | One Major Supplier [Member]    
Concentration Risk [Abstract]    
Number of suppliers 1  
XML 67 R53.htm IDEA: XBRL DOCUMENT v3.24.1
STOCKHOLDERS' EQUITY, 2013 and 2023 Restricted Stock Plans (Details) - USD ($)
1 Months Ended 12 Months Ended
Oct. 31, 2023
Jun. 30, 2023
Jun. 30, 2022
Oct. 31, 2018
Dec. 31, 2023
Dec. 31, 2022
Apr. 30, 2023
Jun. 30, 2020
Jan. 31, 2013
Restricted Stock Units [Member] | Chief Executive Officer [Member]                  
Restricted Stock Plan [Abstract]                  
Number of restricted stock units granted (in shares)       644,000          
Serviced Based Restricted Stock Units [Member]                  
Restricted Stock Plan [Abstract]                  
Stock-based compensation expense         $ 800,000 $ 1,100,000      
Serviced Based Restricted Stock Units [Member] | Chief Executive Officer [Member]                  
Restricted Stock Plan [Abstract]                  
Vesting period from grant date         5 years        
Number of restricted stock units granted (in shares)       460,000          
Performance Based Restricted Stock Units [Member]                  
Restricted Stock Plan [Abstract]                  
Stock-based compensation expense         $ 0        
Performance Based Restricted Stock Units [Member] | Chief Executive Officer [Member] | Tranche One [Member]                  
Restricted Stock Plan [Abstract]                  
Number of restricted stock units granted (in shares)       92,000          
Minimum amount of operating income, award vesting condition       $ 12,000,000          
Performance Based Restricted Stock Units [Member] | Chief Executive Officer [Member] | Tranche Two [Member]                  
Restricted Stock Plan [Abstract]                  
Number of restricted stock units granted (in shares)       92,000          
Minimum amount of operating income, award vesting condition       $ 14,000,000          
2013 Restricted Stock Plan [Member] | Minimum [Member]                  
Restricted Stock Plan [Abstract]                  
Vesting period from grant date         4 years        
2013 Restricted Stock Plan [Member] | Restricted Stock Units [Member]                  
Restricted Stock Plan [Abstract]                  
Number of common shares reserved for issuance (in shares)               800,000  
2013 Restricted Stock Plan [Member] | Restricted Stock Units [Member] | Maximum [Member]                  
Restricted Stock Plan [Abstract]                  
Number of common shares reserved for issuance (in shares)                 300,000
2013 Restricted Stock Plan [Member] | Serviced Based Restricted Stock Units [Member] | Non-Employee Director [Member]                  
Restricted Stock Plan [Abstract]                  
Vesting period from grant date         4 years        
Number of restricted stock units granted (in shares)     14,000            
2023 Restricted Stock Plan [Member] | Restricted Stock Units [Member] | Maximum [Member]                  
Restricted Stock Plan [Abstract]                  
Number of common shares reserved for issuance (in shares)             1,000,000    
2023 Restricted Stock Plan [Member] | Serviced Based Restricted Stock Units [Member] | Non-Employee Director [Member]                  
Restricted Stock Plan [Abstract]                  
Vesting period from grant date         4 years        
Number of restricted stock units granted (in shares)   12,993              
2023 Restricted Stock Plan [Member] | Serviced Based Restricted Stock Units [Member] | Chief Executive Officer [Member]                  
Restricted Stock Plan [Abstract]                  
Vesting period from grant date         3 years        
Number of restricted stock units granted (in shares) 276,000                
XML 68 R54.htm IDEA: XBRL DOCUMENT v3.24.1
STOCKHOLDERS' EQUITY, Summary of Activity for Restricted Stock and RSU Awards (Details) - Restricted Stock and RSU [Member]
shares in Thousands
12 Months Ended
Dec. 31, 2023
$ / shares
shares
Shares [Roll Forward]  
Balance (in shares) | shares 441
Granted (in shares) | shares 290
Forfeited (in shares) | shares (2)
Vested (in shares) | shares (106)
Balance (in shares) | shares 623
Weighted Average Share Price [Abstract]  
Balance (in dollars per share) | $ / shares $ 6.46
Granted (in dollars per share) | $ / shares 4.25
Forfeited (in dollars per share) | $ / shares 5
Vested (in dollars per share) | $ / shares 6.51
Balance (in dollars per share) | $ / shares $ 5.12
XML 69 R55.htm IDEA: XBRL DOCUMENT v3.24.1
STOCKHOLDERS' EQUITY, Non-vested Service-based Awards (Details) - USD ($)
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Serviced Based Restricted Stock Units [Member]    
Share-based Compensation Expense [Abstract]    
Stock-based compensation expense $ 800,000 $ 1,100,000
Unrecognized compensation cost period of recognition 3 years 1 month 6 days  
2024 $ 571,000  
2025 468,000  
2026 314,000  
2027 7,000  
Unrecognized Expense 1,360,000  
Performance Based Restricted Stock Units [Member]    
Share-based Compensation Expense [Abstract]    
Stock-based compensation expense $ 0  
Restricted Stock and RSU [Member]    
Share-based Compensation Expense [Abstract]    
Number of shares issued from vesting of restricted stock (in shares) 108,796 140,277
XML 70 R56.htm IDEA: XBRL DOCUMENT v3.24.1
STOCKHOLDERS' EQUITY, Share Repurchase Program (Details) - USD ($)
$ / shares in Units, $ in Thousands
1 Months Ended 12 Months Ended
Apr. 11, 2022
Jul. 31, 2022
Dec. 31, 2023
Dec. 31, 2022
Aug. 08, 2022
Apr. 10, 2022
Aug. 09, 2020
Stockholders' Equity Note [Abstract]              
Common stock, par value (in dollars per share)     $ 0.0024 $ 0.0024      
Purchase price     $ 11 $ 1,798      
Share Repurchase Program [Member]              
Stockholders' Equity Note [Abstract]              
Remaining repurchase of common stock     $ 5,000 $ 5,000      
Repurchase of common stock (in shares) 359,500 600          
Common stock, par value (in dollars per share) $ 0.0024            
Purchase price per share (in dollars per share) $ 5            
Purchase price $ 1,800            
Percentage of outstanding common stock           4.20%  
Maximum [Member] | Share Repurchase Program [Member]              
Stockholders' Equity Note [Abstract]              
Repurchase of common stock shares         $ 5,000   $ 5,000
EXCEL 71 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( *J"=E@'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " "J@G98(#C-;NT K @ $0 &1O8U!R;W!S+V-O&ULS9+! M2L0P$(9?17)O)TW%0^CVLN))07!!\1:2V=U@TX1DI-VW-XV[740?P&-F_GSS M#4RG@]0^XG/T 2-93#>S&\8D==BP(U&0 $D?T:E4Y\28FWL?G:+\C <(2G^H M X+@_ X.K@"%AAA=.F[@&8EENJ?V-(!=D[.R:ZI:9KJJ2VYO$,#;T^/+V7=RHZ) MU*@Q_TI6TBG@AETFO[;;^]T#ZP47MQ5O*R%V@DO12-Z^+ZX__*["SAN[M__8 M^"+8=_#K+OHO4$L#!!0 ( *J"=EB97)PC$ 8 )PG 3 >&PO=&AE M;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0>&?V;0O&-H&VM!-S:7;;M)F$[4X? MA1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$+.G[SD5'Y^@X>?/N+F+HAHB4\GA@ MV2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>M5II ,,X?+&A T%116F]?(+3E'S/X%/F7/Z3H=,H%N,!M8('_.;Z?D3EJ(X53"Q,!J9S]6:\?1 MTDB @LE]E 6Z2?:CTQ4(,@T[.IU8SG9\]L3MGXS*VG0T;1K@X_%X.+;+THMP M' 3@4;N>PIWT;+^D00FTHVG09-CVVJZ1IJJ-4T_3]WW?ZYMHG J-6T_3:W?= MTXZ)QJW0> V^\4^'PZZ)QJO0=.MI)B?]KFNDZ19H0D;CZWH2%;7E0-,@ %AP M=M;,T@.67BGZ=90:V1V[W4%<\%CN.8D1_L;%!-9ITAF6-$9RG9 %#@ WQ-%, M4'RO0;:*X,*2TER0UL\IM5 :")K(@?5'@B'%W*_]]9>[R:0S>IU].LYKE']I MJP&G[;N;SY/\<^CDGZ>3UTU"SG"\+ GQ^R-;88C'(CN]WV6'WV3T=N(]>IP+,BUY1&)$6?R"VZ MY!$XM4D-,A,_")V&F&I0' *D"3&6H8;XM,:L$> 3?;>^",C?C8CWJV^:/5>A M6$G:A/@01AKBG'/F<]%L^P>E1M'V5;SC MFED)O816:I^JAS0^J!XR"@7QN1X^Y7IX"C>6QKQ0KH)[ ?_1VC?"J_B"P#E_ M+GW/I>^Y]#VATK\>WZV22$KYI9+2,6D$N!LT$DN/R+RO JQ GH9%LE" M0AMNZ5/U2I77Y:^Y*+@\6^3IKZ%T/BS/^3Q?Y[3-"S-#MW)+ZK:4OK4F.$KT ML@'37[]EUVY".E,%.70[@:0KX#;;J=W#HXGIB1N0K3 M4I!OP_GIQ7@:XCG9!+E]F%=MY]C1T?OGP5&PH^\\EAW'B/*B(>ZAAIC/PT.' M>7M?F&>5QE T%&ULK"0L1K=@N-?Q+!3@9& MH >#KU$"\E)58#%;Q@,KD*)\ M3(Q%Z'#GEUQ?X]&2X]NF9;5NKREW&6TB4CG":9@39ZO*WF6QP54=SU5;\K"^ M:CVT%4[/_EFMR)\,$4X6"Q)(8Y07IDJB\QE3ON>;G*YZ(G;ZEW?! M8/+]<,E'#^4[YU_T74.N?O;=X_INDSM(3)QYQ1$!=$4"(Y4U#VT%SU&\Z.9X!ZSAW.;>KC"1:S_6-8>^3+?.7#;.MX#7N83 M+$.D?L%]BHJ $:MBOKJO3_DEG#NT>_&!()O\UMND]MW@#'S4JUJE9"L1/TL' M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5 MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$% @ MJH)V6!+<:."J!P "3( !@ !X;"]W;W)K6\_/O* M+Z!X1[[&'9$/"3:^!^N)+)\CB[,7QI^2-:4"O49AG)QWUD)L/O5ZB;>F$4F. MV8;&\IU'QB,BY"9?]9(-I\3/BZ*PARWKI!>1(.YCL5/XAHG 0L1IP^ MGG?&]J=)W\H*\B.^!?0E>?<:94UY8.PIVYC[YQTK.R,:4D]D$D3^>:8N#<-, M29['OZ5H9_>96>'[UUOU6=YXV9@'DE"7A7>!+];GG5$'^?21I*&X82]?:-F@ M0:;GL3#)?Z.7XMB!TT%>F@@6E<7R#*(@+OZ2UQ+$NP('UQ3@L@!_5V#W:PJ< MLL#9MZ!?%O1S,D53<@X3(LC%&6*O^- I'81]-8!.(-S>.B/V7_ER[Z8SE!'W[\>-83\N.RHIY72G\NI'&- MM(W15Q:+=2)U?>I7!7KR/'W;ANJP MP>6VU?U-QP>L:LO'D%B%SV#'9P V<"SA^#F@64A6.D!P_2,)$QU7%RQK2\B0 M6(70R8[0R7X]:!S'*0G1#=TP+G2D8!W!4RTHL*HM*$-B%5##':CA?J"N*0]8 M=HOPD;S1:*^Z!J7MX%T[>H/U;:$9$JM &^V@C<"FNBGG^=47))[L7/>48%5;6(;$*K!L M2YDVJQ6N\N*L!=8@-[O7\8*+V@(SI58E]L[FVGM:!DYD:,F];?V@WR!6>W^$ MZUHC,Z161885,@RVLDP#LR"DZ#*-'BC7HH)%;#EX.2UN4R-K^@W^J:E"$M9\N?4.AUJF M=@BK;RNO;\-F?1?:/<;E>);']B.T%-)K(,:1RU*)4U)EOKX[PNJ3J1:@T2!@ M2JT*4$4!&_;P)UY69*KZB%9#0^F%*K0E+Q M RF4OTR*#E5P61=*[+ 7SGH[0AG#T3,*4HA^M8TO_W,.%%5N3/$2*P"I% M8-CZRX#O!_$*+=^B!Q9J 38(+&9:2$9#@RFU*B05&C!LZ[?]"TU?O36)5[0V MKC8(78Z7D_'O6EY&,X(IM2HOE1'P7AGACH9A]RF6?DQ>H2210YN/YDF2UHQM ML.8ETV(S&@Y,J56QJ7" ]PH'WU@H0RCAQ602UTY1-BC5P#)J_TVI56$I^X_W MLO_;AP?%[&0^DDDWJY_7;5"\I[HJ%ZYJ3>T0UA\KZX_WLO[S6%!>+"+)'K.0 M+48M-5BQCII1YV]*K;KR0#E_9R_GGU^.R)5A:<6XUFPTZ%RRN$L\CTH9*>(7 M@MJU!T;]ORFU*CWE_QW8OI?TEA$)0_0Y3>3;B?;Z;-"I>WH,E[6&=8@*@O1XH+-?2 MM?&O3JJ1D- M :;4JM14"' :YO;54^28Q%X@XWH^<9;OFW*>/SV0=]%BA>;?&4O](K7_N9H( MKFL-\Q )P5$)P=DK(5RG#V'@R7['B-9[P"JM5_09#0NEVB!7RQ8,/U_8(VP/ MK9/!6>]91T<% 6>O(%"=FUBNB3PK=)4*>;G&66C7$C/I\=U2[>1=&T?.Z2GN MJR:6, X1!AP5!AS8NF\'LUG (S2?:,' "GU;.VL&5[7N,H4 MZB8O&LKOIN-O4WGCN)R@V_GD;KI8'*'%\>+X6@O.J/\WI59=/ZO\?Q_V[5MP MV21M-KKKX#5(7#V%9,TBDC^F.D+;31TZ6*GUREJCYK_W;NU\9E'S[R DR,L> MFQ?+Z'=[=]]S&.>K^WOJ\.)+$E])YG 3%-)'66H=#^5(RHOO'10;@FWRE?@/ M3 @6Y2_7E/B49P?(]Q\9$]N-[ -VW_ZX^ ]02P,$% @ JH)V6&N!9^(O M!P HQX !@ !X;"]W;W)K:&$B==#66UV)GPSXR,AT+E467I/+8KQ\E.Y(L4G0ZY$,;R3J\ M.I>/>PZIXR?&OXLEI1(\K[)-5MD0N6XP7)$T'XR.J]]N^.B8%3)+WDSF9\,W)(1S6@BRQ!$_7FD8YIE923%X\B&6976&9%D=,S9$^ E M6D4K+ZJ^J5JK;-*\',:IY.IIJMK)T9CE@F7IG$@Z!U](1O*$@FD93H!#<#<] M Q\./H(#D.9@MF2%(/E<' ^E>G/9?IALW_)E\Q;4\Y8SFGP"&#H N0@;FH_? MWASM-A^J?.ND49TTJN+AOJ3O;F_/KV;@=#H]GTV/3/EL GCF .7:.A)KDM"3 M@5H\@O)'.AC]^@L,W,^F[-XIV$ZNN,X5VZ*/QD0L@1HUD)07]$>1/I*,YM(X MBIM0?A6J+ "/(XB@'Q\/']OIZ*@P#OT:M$/3JVEZ5IJG2<(*Q4J5AH0JBO<9 M/922/ M:J 8-W+R#>^+8]QA94!%"(5F7D'-*]C#*V$K"B1Y;HV6B6.@]YL7=1CJ&.PB M,[^PYA=:^=UPNB;I'-!G)7:"&F=ZJ+W6:TWA#34=@\(>:E%-+;)2NY9+-?.2 M@G,ULH (0#6%W; T8-S#3BVMZL97>C$F2O8%>K+W:A\A''8(ZR@O; MJ!V*T&T4R]TSO,K$:RH*V5K9!.N>(3)J11G5Q]**,@[,Y%(PPBKX=Q M2V.AE?$%%:(L5,6JR"JAG5-5Z9.4E$[&R!=J1 YA!#'L$C;A@CCHZ^-&(*%5 MDWK[6-5B(U]DF(N^%W;I&F 0]K)M) [:->Y:<55]F3^ C"I+9YFXVT!M!E$< M=Q>^ 16'7A_-1N*@7>.^IKG2KS?1-"A.=_D;,*WYL4NQ41QHEYPSNJ!J\<^5 MWWNM\>;Z"75EB2*W2U$']4@B;+0'VL5G4T$M7:<+BH>UA6Y0G;AO?!O9@7;= MF5W/3B^VIM)(31>4$$&LS3X=%D1^&/?0:Z0'1F]RO1>3TR^3B\ELH$39D%[9)JTJ\]K"1 MI*Y3*.HN2A,(]E%L;?7L2C;>FIDUX]6Y@=HFL(Y<[.MA7;4P#+MFQX!2*?;1 M;Z0-[=F^Z?07E8S0-Y+7I4R;&SH$]NSF4*-UR*YUNTYR'TE=RJ)86WHF5-2W MQT*-Y*%WDCRDJUEW9VR ]/%K! _9!>].C367),VK#=>:B;2<"&:&!EG3EYE! M(/T^EHWV(;OV;60Y9_GA6\?VBNS/&J[WBK:;=:.W>(_>LM5* MZ920+/GN@ /WD^LB3WD##AY)5M#/ /F.Z[KE/R"6A)=>IY!+QM-_Z?PSB)T( M82= FX.\V EAZ/C(?X6F0I0VZ?\>[GT&D8/CV$&>7\$C!\78@7Y-A1522/6D M+ [O>8*(#>Z@6S3LF-WA:)W^VOW##4GGATH[$K).E2(;N>GZC^.H6QY,*(1Z MC"]N? *V^X1;6DI;Z7P)SU6OFX^E=>4/<*"?2^LP/X[BOBK6. 1L=P@SKNIM MP5\VD_KUG E\@(Z'/ >'03V1WSQCS#5/=P^'<1AJ\V0?;#?-QFA@N]$X;1U0 M;;8>R@^I&K$L/]H]*KUA0M2G\E+J[\ /L!5VR!ACT@K[^;FP(MMN0S7%!:S=>2:1) M-8SD(_TKC.$PP0 S'28,6U\0R\^WEX0_I+E03F.AVKF?0A6 ;[Z(;FXD6U^9E&Q572ZIVEGS$J">+YC2]NU-^9VR_BX]^@]02P,$% @ JH)V6-_U MF*(@ P I0D !@ !X;"]W;W)K,%DFK*Y[:H M.$:9<2JH#1VG9Q>(E%8\,.^N>3Q@M:2DQ-<"L!)P/!M:9^[I*-+VQN 7P4NQ-@8ZDEO& M[O3D*AM:C@;"%*=2*R#U6. 1IE0+*8R_*TVK75([KH\?U3^;V%4LMTC@$:._ M22;SH=6W0(9GJ*9RPI:7>!5/H/521H7Y!\O&-G0LD-9"LF+EK @*4C9/=+_* MPYJ#Z^]P@"L'^%(';^7@F4 ;,A/6!9(H'G"V!%Q;*S4],+DQWBH:4NHJ)I*K MKT3YR7C$2L$HR9#$&3A'%)4I!HF6$^#P&G%KD[W'2W50+: M+, V"]#H>;NR<#.9C+]/P5F2C*?):5<\C8#?+:![[514*,5#2S63P'R!K?C] M.[?G?.J*[HW$-F+UVEB]Y]3C,ZHZUY19[0$@8_6MG-54]5/*ZE)VUK(1#(R@ MWA86L><.[,5Z1$]-@EYKLL'IMYS^LS5)IC]&7RY_?+T83Y(/8/SSYFKZI[,R M_EM6YHW$-B(.VHB#9RLS8D6A=C;5\^G=,:@0!PM$:PP.5:]EC%+$!:BPVH)S MU9='7:EH],.U*C@GC@/]K6+M-=O [[7XO5?@&T@!4"USQLD_M;OH,)JWG>R- M>&\-"@:.^6W1O\!P@S]L^Q9^JZX>H^<-6 M 'N@HR^W:Z#MM4-47V"^(3XGI0 4SY2G,70 $XL4C^=.08:N]OZT#5HVO6AV ,MT;90271)RD[^^QUI1;(E2FFQ MY"$6I;OC=\?C?4?.#EQ\DUO&%'K(LT+>C+9*[:XG$QEO64[E%=^Q KZLN?$PW6Z5?3.:S'=VP>Z8^[^X$C":UE23-62%37B#!UC>C-_AZ27RM8"3^ M2=E!GCPC[!5 JDK1#T*+B5@MM6\'H4O$K!,Y$YNF+BL*2* MSF>"'Y#0TF!-/YA@&FUP/RWTNM\K 5]3T%/S!2\DS]*$*I:@>P4_L*A*(KY& M'W9,4+TX$M$B00N>0V9M]9+O&7I7Q#QGZ!)]OE^BUZ\NT"N4%NC3EI<2A.5L MH@"B%C9_'RZGAY0];G?T/1DS1CUEPZJOI& M59>V_3P,")G.)OM3^%VIR'%=OY8ZP^77N/Q!7 LNE5ZJ7FQ']>!D5A<[0=#" M9I%R(S>R8PMJ;,$@MC\%EQ+M!%^GR@8MZ$SJ^3AP6] L4H$W#>W0PAI:. BM MRNQB@]C#3N\#:^S"[M1.Z+E96842*/MCK M067L?*M[':1=*>PY/9L--P2$AQGH3O!]:AI

0 ,L M!"OB1P3]3B$S4Y+1!DXSZ'4&3'?1OP6['.;Z;0JV"%WZO> ;HL/#3'?>M WL MPK#3GGB8>&V07:G0Z=N%#=?A:)!)=,94"0U4A^ AA\C*+15V8L&#W/FSS/)2 MULZ=;U@4#U+7_);*-$:O(8L2GF542!,#X_R%U?FCN>AD"9RK;A&R2>&>9I,T M/$B&>7"99J4^)_PXW,K@,W"M4KUP&V8D>#"QOIB#-N"E>VBA-@P59;X"N+IA MUHCAE%,JJ>!P ZV@-=7((/7^;*J]E+7S<#1\3(;YN$FUH_>V!;M]QD9/@29= M>HY<=QKX[1IM%0Q M*>*D(;+R3"7G^;FD'_#5OK\ZY(ZP)Y.PW89MPI./3_H MJ>1$-P#G;QJF)<^2)7 3@OX*/3*]%9F^K$!+%C.3YD_7#>;TKB\.QEH6&IV# M_A?X8SC-F&]39QQZ416U\2^H_H/ACIG+L.QQ#&>E."OU#.98HJ=-JIB_O;M' M,)DEH %(5'II+,)\ M5[:,GYQ<+>5,;,P5G03"* MU/,O7;^MKP%MS^=5ZO\#72VQY_X9XUPOB6;_X M\,5^IV*2%1!E; PSG*H1E$\,)DQH M ?B^YEP]#?0$]47K_#]02P,$% @ JH)V6/L.V=?4!P 8R( !@ !X M;"]W;W)K$\Q))\>7EXO\ZE MZ*M'(;^K'><5>BKR4EU/=E6UOYS-5++C!5,?Q)Z7\,U6R()5<"OO9VHO.4O- MH"*?D2"8SPJ6E9/5E7EV*U=7HJ[RK.2W$JFZ*)@\?.*Y>+R>X,GS@V_9_:[2 M#V:KJSV[YW>\^G5_*^%NUFE)LX*7*A,EDGQ[/?F(+V]"H@<8B?]D_%$=72.] ME(T0W_7-U_1Z$FA$/.=)I54P^'C@:Y[G6A/@^+-5.NGFU ./KY^U?S&+A\5L MF.)KD?^6I=7N>K*8H)1O69U7W\3COWB[H$CK2T2NS'_TV,H&$Y34JA)%.Q@0 M%%G9?+*GUA!' S!U#"#M #(<,'<,H.T .AP0.@:$[8#06*99BK'##:O8ZDJ* M1R2U-&C3%\:89C0L/RNUW^\J"=]F,*Y:K46I1)ZEK.(INJO@ YQ:*22V:,W4 M#GV!P%!HBGZ]NT'O?GB/?D!9B7[9B5JQ,E57LPHP:$VSI)UOW=^$>%9E7%W:[-:H#>UJ=?I?JCU+^/4$\EMQ^< G MJW_\'<^#?]K6?"9E)Q8(.PN$/NVKGZ!:964B"FY!]LD_]G?\A\TVS:#(#-*5 M[&%%X_GB:O9PO.:Q$"8D[H1.UA)U:XF\WOR8_A=RL$F)2D"A2T299#E'9;=( M_5S?)=KQ>RD>,HAKM#F\WO/1.3U_)F4GUIIWUII[O7?#06F2L::BEREBA9!5 M]C_SP+;R1MW\V&5XN1SXU2)$ FSW:]PAC;U(?^Y\DW-@#<24 A>^!#<>(:'A M480U<"U"A 9VN(L.[L(+]]]"04DN49JIO5 LU^790+96X,4(03# .)98V@$N M.X!++\"[2B3?IYJ 4P1) 5V)ZX(7XG/+I02( MSYG+GKB=PX+1_--E0 8@;5+8!?*(D+&?0':LO.=*\^Q1!3'.-CF59VR3Y>YJ MTJH_4SDYE[938Y#>&,3KL8])(FI=?*&N\.R!;7(^K21+;=2R;G6=1LTP/2U" M) P=3NM)'WL9=?6U? ".$/)@Q47'4U(\Q#46FE*R< #KN1C["?56\CW+4L2? M=$XZHCT<3TW&T3Z6(LYH[_D5>PEI]7.UXQ(:74C+LO+4M%;-::Z-((Z%J,NU M/:=A/ZEU(;AGAQ?B;\Q4TS@:@;1(X9@Z"C#N&0W[*0UPRIKWGC;%0ACS'I4, M*^XQ987S$>RQT!1'KOX*]\R&_=3V]:@47^A&RHIP3%B+< C00FI!Y(#7\QKV M$UL3GYZX'#/5-(R&T,9"CL0A/9<1/Y<-.Y@7?$PL7$6CY;"'MHK1HV X1=N3 M&O'RQ.H744'7POINVHH1CSN#^; ;M A-8^K U_,,\?/,3Z]MX*VXQY021G1( M/!8IC"-'>2(]\Y"W[3N&\US:3JW0TQQY@>9JF>QT&D!C#"X$ MQU4'4P#YGW6VUQ%G-8&%^*)X/G2<16I.'96%],Q'_,QW*T7">=JZ#9IZKOQM M/1FSV[!MMHBX*)KT!$C\!-CE1JU,ZVP-,2M@"]-9S&N1FA.7>7LZ)/&;\F*; ME0RV[J_("R_-OCDOSJ3MU H]NQ(_N]ZR0_L^KT2Y*.^G%9<%2OG&G@\O[QPM M(II''-[J:9;X:;;%J1.@<11O:4UL\NS>;"7M(6:A7SRD7ZN0H_#2GH"IGX"_ M\?U1T8$FI@ ;*[T/MK[=L^T5AWL JU"\=&P":,^^U,^^HPRV)8,5M85LR3"! MK4(X=KRAH3TG4S\G?]YN>6)"@C\E9E.,@(XY2MH-,IC;+$J7>7.A:_T#U%%' M>T%M.[]A>V$1FD;4Y8&CE\+^_6'[3E2:F'Z7\N;JO?;%V]8PWB6&>-0*6Z3 M(PL'$]">9:F?9=?#\1YVR&\6$>SR7L_"]+5[W ;L.\FWM3[^>C_&[=P#4\O^=ISY%GH. M76^?:4_/=/F7PZ\4Y;2I80V5'.RAY^7_-X?>F;2=GF_UU!^^;>_=OIT5FXJ! MI&'8CK(@(\<[=*>3VXE/3KKHN[X0DO-EQVQZZFJ.H#U LM*SEZU/_FT4401^:[97 1APND=@S\ M=ZE/(HZAPT]^*FLLJG1"/-]L(7"[.@DO>#RWOPB M02'S!K Y >V>=K]Z^&3.^@?/U_CR!EN>?PSQY3JT?T/@&Z-KUD_=_/SB1R:! M7A4$TA9@!!]B<+UL?M'0W%1B;\[X-Z*J1&$N=YRE7&H!^'XK1/5\HR?H?E>R M^C]02P,$% @ JH)V6(+@\R)T!P WBX !@ !X;"]W;W)K^OT+B==G= M/BB@Q'2Y>(6(DW]?";/8@)"27;5YB &?[R"./GU"QSK=EO13M2:$@<<\*ZJS MV9JQSPM/+I$O AK$GRG95@?'0#S*;5E^$B?OD[.9)5I$ M,A(S08'YQP.Y(%DFF'@[/K>DL^Z>(O#P^ M[V#P\?YA;7)&+,OLK3=CZ;+:8 M@83!O,6Y&FQ^\2/K1 ' 0A- M!* V T#W(D NPVPAP'.1(#3!CC# '\BP&T#W$& .]4DKPWP!@'0G@CPVP#_ MN0&+-F#1].ZN.YJ^7&&&ST]IN054H#F;.&@2HHGF79@6(G=O&.7?ICR.G5^4 M1<(SD22 'U5EEB:8\9,;QC]XBK(*E'?\K(P_K+L$^SQNV_!NUP8TV88\YVG/KB> :9%6MQ7 M*JY0S?4VCNN\SIKN^8VM">4]EO-ZM1:%Y(& ]T5J^T2:AR^Y M>/VP.4^J+K-0EUFHX7$F>-[A#! 60A*,N/'9/;,(EJ^W". MG-/YPV'?CR'VTEWV0:LQZ'CI^W8?%8Q1[L+S!C<,)5S0'G)%$B[H6K!#]:2S M.^GL9TGWBF=SM<:4\ Y]CHQ*5C$+GE0;').S&4^;BM ',CO_\7OH63_+!IM) MLI5)LL D66B2+-J1>0?9L' =W[9=>3XX73XX3: ]D0]\:(N*Q!."IT!S]%J4 M7&E9_GA=9AG@\_H6TT0V_-\Y)K/$)-G*)%E@DBPT2189(NNEDMNEDJLL+4W. M'(NWO03P^8*_ E>X>8DDC^*8R!+&'66U-2C.8P2TO %HI:4)M(A0BXC<44'N M-:4GFM>)YBE%>U]5=5.0^;L0[Q)&TUC,PI704B:8-VK#4#!/]QPK+2+0(D(M M(E(A>E+YG53^5TMU.)_)9//'6>18R/<'VBD;\-*28Y(L,$D6FB2+#)'U4F+1 MI<1"F1)7-8W78O;B*?' 4Z)+![[R!B3?9.43(6"#GZB8N1A^E.7&0CND%MHA MI44$6D2H140J1$^_9:??TJQ^NG&V'+7PV'9L#PT$5;;JI>/,)%E@DBPT2189 M(NOE";3V:WE+F2G79'.0*_%N63TY2[5D_17.( =:3"]7H+\W^\_A_U.]).3'I(((% A/SA"-(21<\BNM2(\A'^ MK1)W[W- M='!EZDDO2] 7%-*BO@),(J+*MNM2'#R3UVQQH0\ @7O!CXR)]X. MX'CA/>H&+62EAP1Z2"B!'+M#@2,=JB_HWBB RL7CE.F&I*(YHR8@>ZC:&&,C MA(;"C5$RWTT"+)1P**&&#RV$]C5I8WWIS/'M"POT"&:I7R,\PW^1R*FE? MZJL895L990N,LH5&V2(X=@@6:&E#=^(E'.X] .C]CR8<5#H.+\X6DVPKHVR! M4;;0*%MDBJV?4GNO!*K-DJ\QX^#8)1E-=6.([X\F.RU/H(>$>DC40MR)UO2E MVWL*4&TJO-22@WH# >H=!#TDT$-"/2120OJ2[6T$J/81OL6:@V// %H+?^D- M-31J&AAE"XRRA4;9(E-L_5]J]\8!,FDFGW&F4+ MC;)%&CGZO;8W+=!_95H@B6F!?&OH_JCO_]+1;)0M,,H6&F6+3+'U\^)@X\6W M6!9(;UD@O66AAP02B.U[B\%DJ">*GD5TJ1%%;5F@O66!_A_+ NDM"SUDI8<$ M>D@H@=BN-^P%-:@OY]ZP0%]E6-A2R<8K_I%A(<'8R\5HYAFCI!N%QC#/]H:[ MCD(9&W0=9RB@Q+#P;&=*PKUA@;[9L)#+:=2P,,JV,LH6&&4+C;)%2&)8V,LE M;2+W>Y#60ER_ U@0\$4PK0(J$KP!XIC2;!;ML ;A(&I_K M2& I 5OQSW./+-]MOEM:1[ZS:+/MZ#O0_?'3#6FV(V=/1WP9&V>UN,,=+?/F MMDF:U6+1$5S=@!AG<=T6SEL2XYJ_QPA,FG/U=J5S35(*,%^WY#Q&_/:9%O=@ M6]99PB-X2UAZW##R^[V15??YP<;8G-#[9I-TQ5^5ZH+MMN-U5W<;L2-X6F MV9I[6S)6YLWAFN"$4 '@W]^5)?MR(F[0;6D__Q=02P,$% @ JH)V6(5? M,VO6!0 MPP !@ !X;"]W;W)KH2YQNFV MOL02Q3ESYLR%S/'&^;M0$$7Q4!H;3H9%C-7[R22H@DH9QJXBBR]+YTL9\>I7 MDU!YDGDR*LUD/IV^F912V^'I<5J[]J?'KHY&6[KV(M1E*?WVG(S;G QGPV[A MNUX5D157-&"XFUU[?$VZ5%R79(-VEGA:7DR/)N]/S_@_6G#WYHV8>=9 M<"29VQF!0:MO\ MRH=6AQV#P^EO#.:MP3SQ;APEEA]DE*?'WFV$Y]U XX<4:K(&.6TY*8OH\57# M+IY^^+BX^'YU?7/U[:OX=BG.;Q=77S\N%L>3"'#>,E$MT'D#-/\-T&PNOC@; MBR ^VISRIP 3L.JIS3MJY_-G$3^0&HO]V4C,I_/]9_#V^U#W$][^GX4J_CG+ M0O0HCW]_%76#>?!K3&Z9]Z&2BDZ&Z(E ?DW#TY1YH-A:_B_Y&VGPK/I.,!7EQ"1FZ[9^7E,NYY,C)2#F]4AK&X=#6W@M!6S-[-WO$O)DD4/_"G&(D; M>I!AE-RWDF!']"ZO%3T%UG:%>-#^QF"2)0YG)7FM($(B :]>7$@K$5ZSY!)# MX)&WDN>?-(-FG' 0O*.0062U-E%(P>5_AR"5\[G .G.*'MM!)""Q*@EU7TNC M(49+C37&]!D!R><;Z6D$B:O*0-Z1N&/%V4TDJ0H.H&224#,('"4=!H]L)D1K M\ML-%F@L;EPND4:X1<2AG?Y\O@06@2DC/)N^&UI)M65N^%IIGX1B[C@W#(4P MD) [L? RIYW=>=+4J1)=(P0-'(SGT4$';=B>3$D6=)9TY ..4-/\K M*(15UE8SJ50P(#:;3O>V)!$?T"+.9.A#(B.D=$T-NUA IAFNBFKQ[I VED> M0-[7Q)EJ9&3L%0[>IJ@:87I%@2KSM;3LJPD?&:.4#ZUPKJ804BFGW'M"=2GD M*/'"T6X2[2KU3 R#RFO<++39 LJ[&CE236/MN8WE4FYD3@71;D#!,_@**?2I M=U/:&75E7 ;9-H2I$;FD=\URC69!:2F%'H],C*<_XH@I5-V4)TL,Q5'T,%AK M+N7$O"%,_2 QDA.GZMBO5)I4R[1TF$3MF,K=GHY[6V C^&5JLD%*"ZL6G,D[ MSSN1MJW2Q9$(H L=,)?4B\>I;*LI2S.4?'VS>Q@BN&Q,TU5[;FI40ZXP_K4VAAU+B8?*/;Y MX$G[)6/HR%J^FW42@AXK?XM.074L8H+IPKX=+\9=R!B'9'>LTCB6;0JH^<#K MBPHA/R':GSM<+YP'#%0*._3;Z67%5QER>0_H2G,47R2F9Q1\RC2='K9EABOD MX['=L6.Y6Q$X?5(@LRM#O[JC3'8ND\CY*EV9F1L*O;E7]JO]K?RLN8P^;F^N M]."WXK%M: G3Z?@M+L&^N28W+]%5Z6J:N8@"2X_(-*+A#?B^="YV+^R@_U_E M]#]02P,$% @ JH)V6,N_SZX.(P VV< !@ !X;"]W;W)KO0&@<$U($F^IF2ZW#1X1.KW9L2>&6Q@\; M^P 211(6"- HH-GTK]_\,K,N$FS)$_MB-TF@*BOOL_3#KNV^V+4Q?7Z[J1O[ MX[UUWV^?/WQH%VNS*>RTW9J&?EFVW:;HZ6.W>FBWG2E*?FE3/YR=GU\]W!15 M<^^G'_B[C]U//[1#7U>-^=CE=MALBF[_TM3M[L=[%_?<%[]5JW6/+Q[^],.V M6)EKTW_>?NSHTT._2EEM3&.KMLD[L_SQWHN+YR\?X7E^X-^5V=GH[QPGF;?M M%WQX5_YX[QP F=HL>JQ0T/]NS"M3UUB(P/A3U[SGM\2+\=]N];=\=CK+O+#F M55O_7I7]^L=[3^_EI5D60]W_UN[^R^AY'F.]15M;_F^^DV&&F+\P8;MF(H7Q=],5//W3M+N_P-*V&/_BH_#8! M5S4@RG7?T:\5O=?_=/WNY_?OWKY[]>+]I_S%JU_7N MS?4/#WO:!(\^7.B"+V7!V8D%+V;YKVW3KVW^IBE-F2[PD*#S(,X7%))^=SR[O6._2'_F2U[O\SXZ<_\^+N>T[8I?_'3N]K/UH?&V(T'.[ M+1;FQWLD(]9T-^;>3__\Q\75^?=W0/[(0_[HKM7_$V+=O>!LFG\-&[\6#0DG MB6&?&]M7) ?&YD53DD1NVZZOFE7^:6UR.NVVZ J6M':9]_35JW:S+9K]/__Q M=';QY'M+GQO;UE5)*Y3YVZHIFD55U/EU3U]@?9M7D-)%VY7TDR%!Z-?\>6AX MFVU7T1O;FO9?F<9T15WO\;O98D%Z%YM^;BI\XD5M?A^;S\Z___G%BX_\Y\7W M#[+._#E41!Q^?K &\(:C]>NBSXOEDK0&/R#'I"5OBGK@9PMK36\G>5T5\ZJN M^LK0A\[XLT75+8:- M[8%*@D^.8DE769QAMZX6ZQPZG7\AD"J+CZ.$6[3-HAZ@AN5$[@'\0)09F! & M^%$,&J*&V NPPV %TDWQQ>#'%"'R_)R6;XP5].$+0VNWFVJ1F^:FZMJ&&7"Q M+IH5T/IBT=.N_D";8I^7%=&LRY9=NSG<9")$28A@A_D?3.)65\U+HBZ@;&DE MH@E MXZK&*WU'EQ(<)65_$CH(EX8-ML^H&9+'+X@CB!X+*EO''T.RYDP,/;$X@;,_:W<- M;4+D)N@K$BNP S!YM,8OTX_3_'Z1?3*W=):ZVK B(:76DZZQZVK[8'*PO8J! M?S6_\]7C/7&@5Z1>RX*6Z$M>@C]714-8ZTCQ,,X>" ./GCU_0^;FG_^8/;KX MGE:YGO["JUP37)5=)XN0U-0U(;8WW4+EUV.65L[(Y#6V6 AKKXL;J!G3Y ;' M:0I5L0DMI_EKDQ*W76;D*Y$GU.37$<;Y\)__Q=N\&&!<27>29/>L//,=<55> MFQ7K$0(OV@\FGP]/>"U4WIU]<4_2QA-:@X1F$?-52XPF>^8C>SH]4Q$F%G[) M\N \LJ& 4N3?G4\?DP]6U_BI;JV*,&E.;R0(3) =ZZGI^0!J3?+&]&J H/FQ M5P*L=:R/-\GC[E3_ $Q0JS-K.,(WT*STV4R)^;I./5O8)")4UY%"(D#IX1M8 M#T)F1>J)5E]Z$;-!Q$ 30N\L!63T497&$MM N="&,%%)VR MG2AQ(K1L"X9BA%V-@6&Y,5&VS&Q@=TL'G3)C)#W\0\T'YMFV_@;=C5SL JTMM$C8;.1$;E%0#D M=_ 'K"EY')Z3(Y>$S91EK E85EU)\A/ZH:OZ/;$6:;;MT!&2V1=;*C]L)'(A M &HX(^)>'>['BC1;$/&)7Q=%5TY(;\SU;[&:B#G):2'WA?EZ"9\L5J\L*\0( M"^Q"])/=B.(Y'=80@&6Q=V('BH+U/IV])$81[V51D^,A\D!W*OA0:2+@J7Q+C4_O2TLW.+:Y6UD!W:63$%0.QZ;QJ&I M1D3*=U@^ HQ-=1R15&!-RP<7LR3.A8^B@"Y@2RQ0WV:E$6?C)((Y=.J*TB3B MLS8U\^X(:\S-HH S/T( ]FV.UBK4PD*I F!6=&0IZ/"LW?C'04U52;BHVRU4 MQP$N!.PS1@E1:4'O%S S]ZNIF3*=,TL.7TU&D"3^"\P04B%$3V*QA4@&\480 M=.=U*SZV>+J"L6/A;UH7M95QQ$!2U]Y *58;\T!DM(.BJ_?*:HE4G\#Y.&*/ M9$YX\%#HF)7ZMB<]5F9!_9*<73@YF^;.EUT,Y%$TB[TH\;KPO)HH];N?]D;2 MQKHT,M4PCB0H2UDEBR.6:?Y;"-UC"]H9OPD3GE3PY^GUE/1@312T.:)J80$B M1@C8[8**Y"0''S+*&[4J\_-Z_]^^*6-V#HX;99%A M,S M,LD5C3I4]['> U5G<;@"3*KI ZP:LJ1$@[ >(496C,.::?XS_6 ]BOP! MP2',Z^/H=M)SR "MCYL4PHS]CK_K3$ZSWR0SQXN3 O))",W8 1]P,L$/@!*> MC3UT;;!ZQ0Y^%5;'!6)M$ M#ZC-!O&1F2:]#P?"LO^@N/G+>*RPA[R#H]=7=KEW&H)M*/1R.Z^K56!T]7([ MS9"1\UO',$>XS$3QM\3RP9*_&,49#G!B3R(:(7VBB6A/2'^.4@Y0*/HB3G/4 MTY @P/#A]&XP0D0_;$84 :=NP);8(>82 @ DWDJZL\CA60=2TJR(0.! M+4^?Y@ @P6IQZ^6.O 1X3LYZX2<(UJTF#EBT(,O*W6)D/&3P,E:R$7.MY^4J M2CZ04O K3//W[D\\X_U;-G4<*;C,(X)!H:(D*)P+A[W$OS(3'\A3Y!LRGJ#Z ME.Y/SGM(5HP0BI@DUL:E@72;P,52:!"; M$SL(2H.7&AI=HS IJ6LAEF OXVN2(*->9^PH=I,L7/.Y\'ZXQZA4Y4(\_-5M11L9PZXO:^@# T%H4MZ"6G@ M$UI3$,7N_,Y(IBY>]5!%AJT="42I@'%YI?!F@,=%>+H*'C=F8]/GI_D[^!82 M@DWX#&&M.85%7\AQ])X3ZZVL@&KG^E^+7*V3.7=^CWMD_[ E_>G7M.K[Q\\E M$$I!)79(Q6UI&V%3("-S%0+HB[&C'[.3'>9B M^,S'#J_%L_:2KJG8Q,VC!0-6O%2?^%TRH1Z=0GUO1UA>F2_8FHYHFU.(Q#VGYEVE57;(G#8%4+&Y6QGF?WV2UN!TM+V =(,%]RECE+BLS9 M=]G5D\G5LROZX\G%Y.KJ<29%G?S)Y/+\ O]]=IEQ&8#0.+N@.&] MJ\EL]HS^>'H^N;Q\G/\).\DF8^;*0&E?+RD($EFP!GY.(M6HEG+Y&^BM:LI-,A8J6& S4 MX-FG2;T(XA.;KDVU$4(>,.@TX[]8H<&P=N2-7K*UK8\LEZLGM=ZV0M2MW;! 7LS;@" MVT293D(R5]E:HLY2PMXXKS]"H/COXF!B<7J?35;9\@'('\EMW?82#!K#*7;T M VC4&OP5 &P-,6P'Q>Q+&LXC./HFE(I!>;Q)/TY\TL<4ULH>3(!KO05_D)@XF$4!;CC$J"4]LXJ.#'\%[(D/B)Z M]_:##XEP,K @T$1JOZ[^8DEG/W+B:\-X):^+/:ADJNS9EMFK;4O._L%)<+HE[&@2 U&%U]2CMUF$*LR[R*;H#)N&J$+<^W&:%SFP_BU&>D78H 848EM3(W)( :ANIZY3)U#&5@UN_ M[81X9MYJU"_ZC6M@"ZD]"?B2 %^;HD1EL^NXMXCAO^7.'T3 M%XV;V]Z7W6.6"J]2]&U,*=[^.*<33FXJZ_-O&Q0=6 7[J&+A8 M1M?1W.7ID M')BL2,ET-8S9#3IQQ0I[ZO0<<[1Y**-4RZSW]OY^]8#BH$V!#( (SGTS74TE M%*FEWV7"I[&&]ZI[6JQH8#+MNM$S,-C:"25)2="(ZDO,I MDA)S=+B>K&W#065)^EY2#!HW#UW,;PR!+^1(FU MABF8DY0X,^'2[+[Q33)U\-D[14WWA99669$PR%?NO-*$)S#1ID##S1>"OZ3Y MD"2Y+EVO"OV.;#6747VQ4O$HZX3RMT^-L$J3_,:F^*/ME G"&;U2=YFR3>6K M0"IPM'%2M$%>@OUW.@;WDHTV99(2;RUR4_34469]60_HD-2^Q)\A4UF4S!L. MTNV%C2"6ACF*C88H,I\[][?? M5=SGJIVCRM@G+=E!>IA-[21FH]%-4.#+M+_G *2>4\.NT48[>Z(.2+NG'S:B M") R^T.\\Y"(VDXMK$0/P6D0/?H1GI5?C>)VN6>B:Y#C8XWXM*W MOL6!AMEZ$8RJ NS=M;&D:-AG7(>@Q7E/SGDE(:Q6 M)$(BCU40+^1# ^]/ROQ&BO=+K13HZ 50%-,MUM5FJ!#0XY . !#[G]U:E%^3$(7UCF5 MME6J8M][V=H9"?3-+;()".VYDZ7)9'&AB_\1&HMW9VCHJ 2%WUK>P#[1.$'/ MM$9D2Q++"WYTV/%T*US+.!Q8\%9I;@^0Y%,*4=NTZKDC0WE I:7 2-K=U2$+ M&ZKT"7N%3)O(N4L>'*PHCJR8^9!((!>UD[1:E\ACG&HJ;DAIJ=OJ6%3@"9)\ M5$!L>A^N*[0N;CAD74%F&CV*[STJ[+_%2U=I@>(XZA9ID2XCXV6%=7&LS9SF MZCB)3;'\7X[(=\)ER-VM3LCM4DWFX2Y.HD/5)0O'XW,UY$>0)QVV/DAG3RP+62ZP"D#%WQ>"W=#AC>?*UFXOS M<^]6[=C+D5-Q'U[,07?V9']SKT'^7K..0?D&4^Q'/4+2,#WEBIP5=$6Z[%AX MBHS_0G-7Y,84WJY+:<4+H/[8%A&?GZ95>L5@^0]N>\L;36 M5;ZU3G#N]G'@@E21MK5$$?;+%DBCA*XUEVFTWD-4R7H/,A1^0"E>FGH^\]\#O5\L7&Z'P".*_MH*B6XKZ_;TFS/IHX3U$J MRAVG!'0^Z(YY.5%9Y+O2UU7G&D>.\RGP@73X:N17QJ#ZP?5>U1B:RJ6E'H-; MPN*=;SG'G$<\/>8]/N+#U4JR0O*6]_]D$*(IT:ITD#CP/IV:\$P!@S<"]IV+ MHD-_VAQ9X\];92MNU.#@3>+JP]TG7W=+E7B:8MR>2'IROFL)%]$H[A!\-ZMJ M7B?V09(;SCT*5)&*1/R-=)RF%BIHVLRSD+@YWC\OHVS.>-Y%H=&Z0(*W3V.^ MA7]"BZ*J_$6X!H?I*$/;1&4*;7Y (!]-!_@)R'S5M<,V3XG233>+MZ?+2;[?]'C?B12A@D4:LMG2\ M[]5@1R46^8)A2(<@$^JE6.!TQXE#^V'.@]-KPC#LYHX4]>+WFH,KJQLQ(%%D M3/IB^?>)RH&.%M)DL8(7=);T#I9T/IY4/YRLC\NN0I>1;27@KSGLQM.+3H:W$JIZOI-Z,AW [\^ MCV>%6DSNUK%A8,$)J+"#"^PGS/T,,#YH@1<4GYMVX M#NMW#PD_[[O^W<;BILTBSG/NJ.NCDBZ-:?Y&QYE (HK]P4$OR2(O_)Q3](,S M:&\^7H<\2V=" 2Y)).RXL CNUD[O9F!0.86[V=!3O*I%+1)VG3VJHR 70(U M+TZ[AM*&ZPXJZBQ=3'KJF%?#R&B\0[7,MRT*%3+H$;^K'9@E-H1S*X%$PHB+ M+WFQX^87GV8\])*<>RP:B%X MT^XYXV!D;X;\A )A#._ES4+3())&[;+G7A M,11T_&062I1I7V._=D3Q=K>,L"A-6%7GBN^"KCE\]@BD \R/UEG[CF/OO9Y4 M637M4Y%"R;97)J)0IHA;5]X/&VB-MGO.#2@2N&3?99>3)U=/Z?\7D]GL2?;: M0/ :>4X8U/'7F>.ODUR5/9U<7CZ;7#U^BK^N+B>7S\ZSURF5V74WW4VU,&?" MQD=T5,+KI!ATQDMN<<6H%;= 8X[)WW>0?R2RTREF%]CUR>7C_Y<=C6M/.=@H MGSV9(+8DP7_T:)8YRGT[CG)@YMGDV9,K_/7LT>3QU1-6.4'2W/ IJK1:_N!D MS0FH66$JN/J+YMM(HN@K#D4NSB?Y]K.#^_XN+[S/]"%$C+:8= W1L MFTL;4W"/G3/_8>C&G&9.(JN)CEH1--'BC$?-,4,K0T_0\R[$WN[9PX^P0[R/FXDA+)J!H(H2$[^)Q)HK?#W:-P45:)7Y]+.MU@*^3/:;G M%W$O+T\G$<.F#6Q2+/AZWNME;!=\"^\,;<].2HW:E>EZU[M7/XVL>7!G:D:8OE!?(C??0(R-OV(O@$4#Z!5F#OT M3:-]Z B/C-7<#=<)F5 M#,X#7*:B*I4E97RW.&@MU1I=G4RQT++]CHQ.ILX* MK@*H%M6V"!U6X:85EQGFS(:8/'^7R"0I1T%GL(RCIC2O<;IZ<]17?#^,1 ML:;/1;=8^_%Y0@>JDN1]N(M9R*A8/RB(KPY]G[9N5Y6XB2'W'/9XGOW"'NJ% M4Q=Y.X=BU5ET7IXQ[;*/?PZM:WHS>LDB9#Y;?X>UR%&]# N$CJ/<&:( ,B?8,O=[$W0;-:;=?MW$PCD*TT2F^0QP%/[8NK]&?CZC&OT)'<9 M%]5A576&1#*\QR!*L=>GB26I1ZP6&:UHE"BX1B*K28K".="[M5#FCC4XFU%R MXF/M@S57&R]JVX9K1B9P+J LU>(@AA=):R#6)*U+K(>NG E7G=#7ZMJ$(-2- MFV?G=C>S**S4FQ3-)%++JO?S/-J92A+A=2688.#6%I9M6F3'(V#LRY+E?#U& M]]3"93+2R)HNCC=-4\@$%;TI:1F2# VG5/N*0&J?4,NUS#%>EZ Y#&1AA*.S MFK5V 5J3,(#1H#^NMCM #H8HW<2KWD?'QBN4ZY+!YDW) M.$5),]J]+G8:UT0=9'I=H/?+1T7M8)+>W4;$9"99Y6>U 5T/WI"%=GT/^-5? M$H'2R=S$&(B:)DX*G6#!K<&"-4?_A-6>9BX'F-LB7*KEVVHS4B-M/>BU=TNN M-OK ;KLUZ+5E=Z=WXVW:;0NV3@QQ;Q;KAAVF#<3 QJK: T>'&+B,3 J@&#]0 M/,T-5]ARJXU+_H>$6]*;P 2,: "%-XYB&UW&I&V#R0CBVHA!#%V*+KDZO<)VF+B'@LZ319=V>6]*(R0F7"C$H7VB&]8;UB^)#[J*2%*6N)SR6?<=IZEIRNC[C3A3I M <%4B?O MUUY?HCG0--6@Z ($N'VAOL0R7.#16V,W80S?!\!;?40\1\IA5K3 M@SZ8A]%*F:1J1L ]M(5B\'06,=XHVD5+^8YN*-0RQ,Z]F_C[C]Q" :LRNBRY MEH!AYL)H6(6\#L6.Y8%GXR307#UG101O:!NO'3HX22H&,SCYTS1E>-"JI::* ^XD$9OD,4^W7G60^&(>IY/X M<$1VXU;T0\.)T4$:56\0]F.\V2AQDK%LC-_BF#J_GL"LT/;[K?8=([+[.P#J M9$!4\H^"8JY<23+7'P(;L!_/TLM(APNJ>3&-PW"N?NO>$6_* MYJ.,R?5J(8&4D;)XO7"A6.07$<+G+-?1Q(Q_3)4I18)\L;(OHA\5^:VNQE.- M;L4B/['[P;*H$HZ?ITK+A >[^\)M[P)/2'$FUP8/<\L!1A_W\8" M=NJ][NJJEHZ.W#-EN@/^^'MXBHL;/C4N5V]8*4-&'E[LMGLCSN&0MDS&Z,W< M*,]20M825M/6<0)$_LU"O4C=< M;KAPZW" (\8>B-"OG>+(ZF(K3C=VF-?JECR@;7U45072.BJ1VP]Q9,H 3W^ET^N:S MZ:A3P8VQEKP@,6V\439Z#9@4'K[I/C8W!(N(/KVZSH\:F#*YB,W?492,FLH\ MUBL_E8519YU@LV'.3N9)CV__D?:H* 5Y//VM_)(D)J^3QMT/:>-N2KUW/GO5 M7X28,N;WB,KJ8XYMNGIA$J=?TNHL786H\^5OV'YL31M:YQSS; MJNH+'FP#PV!,L)YPE1F^H>OEG.CUD103[VQT!>>9W@9FT"/10W*G(]N[5$UC M?:3&/=,.2='(>]+F\MW%]"+%V$6$PO@N[S&4_,:I,.+D%V7+_YY#Y,M^[-JF M'71Z*+WNMZQD\*? 6YR60.17C/C!_GKJ:!8W)N,I*D['_MV.A]$_N$(87?$_ M*V-E/DS^[17_;>[^Y9H7\@^VA,?EG[WYE7P?W)M7FR6]>CY]\OB>]+6Z#WV[ MY7^^9=[V)!;\)\:&38<'Z/=EV_;N S;P_Y[/3_\'4$L#!!0 ( *J"=E@I MX$)A6 0 &8) 8 >&PO=V]R:W-H965T&ULG5;;;MLX M$'WG5Q#:8-$"JFU1-]N;&' 2!RV0Q$&<=A\6^T!+8XNH)*HD%<=_OT/*]CJ; M"[:% (F7F<-SAN2,3C=2?=<%@*%/55GK,Z\PIAGW^SHKH.*Z)QNH<68E5<4- M=M6ZKQL%/'=.5=EG@T'2K[BHOH;JN*J^TYE')SY@7> M?N!>K MC!_J3TX:O80'F:W.GL-<_H.2B@EH+65,%JS-O&HS/(VOO#+X)V.BC M-K5*EE)^MYTO^9DWL(2@A,Q8!(Z?1[B LK1 2./'#M,[+&D=C]M[]"NG';4L MN88+6?XI4./YK#B;6GNY>8S[/3$%B^3I79ONNELP\2C6:N-K';.R* 2 M=??E3[LX'#D,!V\XL)T#<[R[A1S+2V[XY%3)#576&M%LPTEUWDA.U'93%D;A MK$ _,SF?7D]O+V9T\7DV>Z 7\YN[^>WL]F%QVC>(;FWZV0[IO$-B;R %C-[( MVA2:SNH<\N< ?:1UX,;VW,[9NXB7D/5H&/B4#5CX#EYXT!HZO/ GM=*_IDMM M%!Z0OU^3W8%&KX/:2S/6#<_@S,-;H4$]@C?Y_;<@&?SQ#N7H0#EZ#_VGMN== MI-=YACWZ9E"^U(]0&ZFVY(.HJ2EDJWF=ZX\$MP6J):C#UKP8861>TP*MQ^1* MU )/9T[74N::%E#F%%,)U;P$+H-*,%+31'!76J* M!!HE,]":!'Z:1F3$8G(@:*=Q^S!1&,+\83+"]R 9DH?YP_3:8J?^:!3:QM!G M+*5W"G.:,EMB\6<_6M%@EC&_(O.\%64NZC4]H2.?I6GW31)RC1A(-8J#W?L: M,'44$M6+"J4\@EW2JAFFL7L/R(&)TUWQK, MQ/ /_0@EH88P(%>MJH5I%3B; ME7BR;8V348 MP_! 9(+;+$D^!&B&"WW$5N*/$H:M?1R#@1]'J6T$?I P.F^5W1872\<']@I\ M6H/QR89K6LK,K>*""[CW)=8!&[),MK51 O3X5R+_%<. J N#X+KC%@51UQ@- M1^2"USSGJ#\D01J218/UB7S"YZ6,RR/]%)ZPW&F@EOI)T&.8<\O2E0_4]VS MGF*K: M<:0HVY]$7S)V;)>QC!=,-N!I4;GMT44AE/N%!K^BUX$M1"H.A(-,L M4RT"S3H:W168XS+JF=G_B=!_@KI'AJHIY18 ^73;GTF-!W$T8F24IAA7E%/; M^RI6AF96&;Q7N-#7\ M"4>PQY=XWS'>44 2O(M[-HB<8QQW!IJR),!UCJXN>MCTP/QD&-#7$FK_J/95 MH-:NPNON='5E\#!Z^(F8=K7S7_/N#^2&J[6H\M] M!0 RPX !D !X;"]W;W)K&ULI5=+;]LX$+[K M5PS<=I$ LJV';Q M>[ IDC/?O(?DY4K([RI#U/!4Y*6ZZF1:+R_Z?95D6##5$TLL:66B MKY8266J9BKP?>-ZH7S!>=B:7=NU>3BY%I7->XKT$514%D\_7F(O55?R7M*LOT%)>8&EXJ($B?.KSM2_N!X8>DOPE>-*M;[! M6#(3XKN9W*97'<\HA#DFVB P&A[Q!O/< )$:/QK,SD:D86Q_K]$_6-O)EAE3 M>"/R;SS5V54G[D"*5TJ)HF$F#@I?U MR)X:/[088N\%AJ!A"*S>M2"KY3NFV>12BA5(0TUHYL.::KE).5Z:H#QH2;N< M^/3D[OWTX?W#95\3EEGI)PW?=(7R$3N3WU[Y(^_M"04'&P4'I]!/N/XTWZ 'C6U?,H0;42Q9^0PY4FXJ M2%!J*D6J%Y8#*LTT BM36#&)F:@4 OZH^)+*2D-%D9.0BW+1U2B+&@+80B*: M?=7;$;!$:7J EX2-2](Q*.I$1!SX)H&(F":EPLK;\Y+5B:XQE0*B83X@1,: MEU;^*L,2""1%0XE/7!&-SIBF/W02)N6S@7MD>85&"BMK(%A(42U=4B3)J]1* M;,MQJ3Z>H10:9DA*)N*1%)OEN&N.V5B4_">F1-K6"I^HX2ET).;DO!2TV#-O MQZ2TDF:-%(9G9!+05 -0+F,Q(^>N\QG(\OW%H ?3-.6F.5&L>%EWV+K9+9A, MU[B-QK^]B@,_>GO2T10<19J1HW/JM@K.*!.T"3M1*I=,2W"I;1AJ(VS8#4K* M52(JLEZ:A&GI-BY[43N^/QD,:Q&PT"YT-M<3,>D)/LT'>^"$U.W2",7<^/:X0H M=.XXF_&TJ-9@:60-AR4>OO1S[<(A!JZ?A30&+AQ[&_T.P*S M6Q5MD*[C#YT_1-E-#M39=TN+S:7,8M)N>B\)Z4(8.U^9Y*:!M&CAS#\_1C_VAQ"-(V=: MF*#_9,<#WZ3E$?X((O(I*4:M&XCU,!J;W:T]NZ&SZKV&@1N'GAV'L6?4A6-F MU"V4!"_9L_62Z0WM,\1ISA#-GDS.\%)5TECB$G]1F&L548&Y_6DLZPW33P0U M+@+*F%P0>*N5[I\Q+IT"/,D,C&W9C4(IV*1 *(B^DG5ND1_-THE:[!U)N(], M4X_6SX:]SMQ6^;=BT+2Y=<$TT[WD),2!+?A1')%SNV9A2'4?#8?U9$03WPOK M2>3X[C"*ZDGL1*%/GW0(DX)S3SKVYEI!K-F?DB^5K@3[9L-QNV_M_*= ;IC)2E*B&8B'V@EQWV?%P:,0A;F,F$+99JYM0&?FWJ#.+_8;F(*P-X)! M+][MX0J\GD>_\2'\SB%^!(^PX T,B?W-/N;(+-;_QVZV_=8#HT"J:?.,HLNF MD5:_-3:KFY?:M'Z@;,GK9]Y':@G414CPG%B]7C3L@*R?3O5$BZ5]KLR$IL>/ M_&ULG5;;;MLX$'W/5PS4HN@" MCBW+3II-; .VXW83-!?$:1>+Q3[0TD@B(I$*2<7U?OW.4+8:%VD6Z$-B49PY M<\Y<2(W6VCS8'-'!M[)0=ASDSE6GO9Z-H*%>VDVI3"T=)D/5L9%(EW M*HM>%(;'O5)(%4Q&_MVMF8QT[0JI\-: K!_U@]^).9KGC%[W) MJ!(9+M%]J6X-K7HM2B)+5%9J!0;3<3#MG\Z&;.\-ODI(\:+=6']?U@WML-A '%MG2ZWSL2@E*KY%=^V>7CF=Q/(LSP73DQ&1J_!L#6A\8.7ZKV)G%1W-=5D)M8*4-R<($WH;=X4$IBX+G M+S6ZA)E0L8:E4$Y0 3Q21' M1*"S"):E* H@%+BBW;H\M/)?"KD@ U,9:=&"5*"-A]:0BE@6T@F"YD DPDE5 M"W\R4"PLJT)OZ+!Q'I('_=_]LG_VVX'?[L)]+BT46BA8"PN5T4^2YL.+66T\VI+2)VT. MF7Y"HQHV9$FIYG@"=LAT&A824\;(C"@[GC,)N:P5PK&?DVB_) 8K(4E72X%R MD]9%T84;=7 I2*C9P*"9L'U/Y(023:DX*1 WM1"90?0$W[/Q3GFS.=UM[C) M9YK+X?+VBBX/BCW/Z1CE5GCHP#4WP)>V 7Y$:+BLR)0PJ-[;K.TQ;$EM:[SA M9-45%_'M42<,0_[C]%AN.F$H#6A*ZY/&S2RY"6R'%,9%G7"C"^H\/O'IOO!6 M"K-F$5-A%/6@I3EP7#F219E\B7D7IFP5T^@0(RXR61W\P'0_U3D7N\ DHW33 M(QWM!?6?H0F(T3@A?:=*"BXLA=]C_ R&D][_<$;^PGIV"5;:J\2,9 M3E/)61T^UK)J*6\;.Q'-$/J.28FLRCJ@:(YH6"TQ36"%J+Z/^FZ&V7HKKOO2 M>==[=E65:#)_(;-68M;<6NW;]LZ?-E?==_/F@^%*F$PJZF=,R37L?C@*P#27 M<+-PNO(7WTH[ND;]8T[?+6C8@/93K=UNP0':+Z')?U!+ P04 " "J@G98 M-Z0\Z1L$ # "0 &0 'AL+W=OU_ 7L\\\\SLS+,[VFKS: M$!\]2*#N."N?*JSBV68&2V9XN4=&7M3:2 M.7HUF]B6!ED>G*2(TR2YC"7C*IJ,PMK"3$:ZH+-<*#*['T;1_-1MZ^V#PB>/6'CV# MSV2E]:-_N()H<#,>01&?T]XC4)X(*+QI<&,VI#>\?AYC_X^Y$ZYK)C% M:RT^\]P5X^A=!#FN627<@][^ADT^%QXOT\*&7]C6ML/+"++*.BT;9V(@N:K_ MV7-3AR.'=\D+#FGCD ;>=:# \H8Y-AD9O07CK0G-/X14@S>1X\IORM(9^LK) MSTWF=XL/O_\YG\-L?C]_?_L1IO4*"W.58WX*$!/!EF6Z9SE+7T6\P:P'@WX7TB0=O((W:+,>!+S! M-V<-?TU7UAEJFK_/%:"&'YZ']X-T94N6X3BB2;%HGC":_/!=_S+YY17RPY;\ M\#7T;]RRUS$O>_ ?:O(9H6!/" R&2?_'QY^@%$R!TU :_<1SI"EUW"#-K(,5 M*EQS9X&$ W1E &4I] [1]F!J@0F2 \RAH@XQL&QFM('5:W %PJUR:!03\(!/ MJ"J$:YUC-WP*@9NH%AQ[?DN3B,9@WK%,D+I 1AUH^*KRN#4)%'S#5P(/3("I MO&9BCQ8IG];9YUJBR2@CDJB&&#?DJ"HBEFE)ZFA9($]^+36O-\0/B9D7#4Y) MSYL _V+&#(+@DCLJ!B$P/]Q<5G(?@DE=43F9!4L235RXSGE&I'>PVOF G;-E MZE'UPK2$'.DA[<(6"=R1K.?03Y(W^S(W-/$\/Y\8&:VYL0X&P>E02&845YNZ MCA?)F\[_053X["!] = 5S(72''8B]_D>-1&):#ND$RA4UU%XK MNJ?I&\RT(<,]CJD+ OCLMS'L[_=);T!"*T0X,\CY>*%+"+;$<)*(70\^4OG# M?G_51-M"@_2'JJ?H6\?@EZJ9C;I>=(12Y+9CCFM4-T3H1,D>?0]FGN;;JCPQ M"_'/?ZK[2FEWJ*T?@9 M%?C4-O0*RW/N0HI?SQ>Y=G)N,S_>6OGI.@_DNS1' MZD8ZJ.K]\E@SS4SN2WM#^6=.&QN($[\M!I)P'KMSBBT9"0QOFIIR\9O:\Y*D MUS3Y'J;4I-@'!2(;OU+OR:DF46%/)>F<+,='IZI$LPEW!TL9TSS6!VR[VEY/ MIO6I?#"O[S9WS&PXY2!P3:Y)[^>+"$Q]7ZA?G"[#&;W2CD[\\%C0%0N--Z#O M:ZW=_L4':"]MDW\ 4$L#!!0 ( *J"=EA.6!OG9 D !T6 9 >&PO M=V]R:W-H965T@-,F47"5+(G6U8[O* M<3*[KDIB5^SL[-;6/D D)&%"$AJ M./]^CW=("4JD9W9!YL7H1M].7VZP;-' MZ[[ZM=:E_)9GA3_OK,MRW[N+,5F5F"GWKI*_R7+FGMSJSC^>=J-.\^&Q6ZY)>#"[. M-FJE[W3Y97/K\#38:DE-K@MO;"&=7IYW+J/3MV-:SPO^8?2C;]U+\F1A[5=Z MN$[/.T,R2&[)0FV[QOMO['O\&6AO+ZRV>\F M+=?GG7E'IGJIJJS\;!__KFM_)J0OL9GG__(QK(W''9E4OK1Y+0P+ M7'^ZNOGX7MY?_O/]W=F@A$9Z/TAJZ;=!.GY&.HKE1UN4:R_?%ZE.]Q4,8,K6 MGKBQYVW\HL9W.NG+4=23\3 >O:!OM/5OQ/I&?\$_^>_+A2\=@/"?0ZX&1>/# MBJ@X3OU&)?J\ _1[[1YTY^+77Z+I\,T+9HZW9HY?TO[3-+PH?=BV65_N.7^_ MUG+C[(/A>D(Y2U,D-M>R5-^TEXE%H?G22[N4)98N;8:"-<7J5'1-@5>V\JI( M_9'XEU8NY%LB6SI?:$<9$]=!W;WZ)M_J0B]-*2B)]"\65Y5SNBA;%G078='1 MJ?A-I]JI3+P2\Y,8_Z.IN"M5J44TC\0X$J@_5%[\70JC^1QV$QVH^&('^OMY 3WW=%T MS"_O;0D1Q.J03OE*SF8S_,?F\KUR!>*&2"8)O,:M!!MZDVH.[)?^75\JI\$= M.@]>+#1R 2HQA2EU]@2R,\6#]N1C(UEGA84AX:O-QKJ2WUW9?*.*IU]_FFO[@W9>*]^CI4\@ MI2PC,RNO4Q&P0P;FE%)&QX]F+"H/F'H/K3^X?]_:GE5#KTR47\L5(NHXNTMG M\[!ZYX@$ J5?P_-COLULL3HNMOAOT9>#_+:M,\0Y5@6,#% M.C) 6&:]EUWR,QZ^^73S@>^B-T=PUKDGSJ9\7)MDW:1R16FS4G_;&$?P(\*= M].7O6JK,6^S]@#NYK+#X0655B(TB3E#P4>(!IDW;IC4^DG&PH+USN5:E3"V[ M&W8$.06Z6&B2V^>B1Q60B*#7X-JR$6O_HW+&IX;[NO]_^:G[ :$Z D7QOCO2 MTKY%5U^H$E/)Q.#!2*/>;#K!=38:B;L-9AT13T1W/@+Q7*E"I4K,)A/\S<7] MS?WE!ZP<]R9CDHAZX^&(36+ $3(E$4 M )<#Y+?P;*E7J+HR%$L;L$0ZRM>Q1-S>/2MZV@K%=]&]!K"+TKHG\C$BMA[/ M(C"H3;X>TWB4HI/D&!D](T8@*B4* M+\8G4+:EWX1;1O(DT;(+GP4$KA#[ 8,=9MU<78L);)C.3\2G'\H!B8OFL8BG M$>WO*I@&[,$R^F$V%-.1^ "&HZFAVA#= M:$(=J8M^-(EP\S.UO5#+RX/*"$&C,<5Y.CH1MXY\+)\XM_K/RFR8@E.-OI^8 M$/*0D;#^^:U;P.#UM)IBV*:[8)_L-FN?CJA%L_)C9@H RI$5+O0Q7*I$'U"! M;@"3#Q*)6?9DP(T-I?[(@W33\-2#,AGA1>H'M!!(H'^51)TYE6]FOE+#1+D4 M3"Y<-U NP/ MUKD$_1D>(AM;&Q\(?/ NR2J>,E3Y5$X'NRF,)!\TV=3Q_&'(YC/952AZ^(8,.Z MC0,0G8$#:<5^\@@3QH!V1PG,%A*^PPKWSWK+,+$P=W)K7JCD:X.[WK9[!YV! M8D.<@9K>ECGKZ"$FA2UV& S#$ W'E8.4]CU!AB2(^8J-L)4['"KO+1$7HOEH M $-:=P [/8;E=S/6UK&^Y*\+E'&:<@D)H*LM%DGG@0QL([\?\=-G!XA=3[S; MSQ&/E]$;V1PL.$6[Y(@XZ@_%Z^823AMA?$W"F0(DL1L/L1HWUP4*#+,I\>T7K' E M6BJ?VF[K=),5+!.SO=<[E"7("M5_-^[CJ/0:QZ(;JD]N8.AW_1GO-.Q/Z/I^ M&W+'9[E9/R*CX_Z)>$U5M#3 C1+$2C8S*6/@N\C5DP%-+8\:7(WK;@"NIP;R M0\FVEAZ-( NBD![U 4@4Z;'"64%3IS$ 4^!K/ID%MFY/E/VFM166#QB:OF$M M_B#N:\JOJ=6] E3-$8*['6.W HN[W6GA"<#R A5-Q6)Y8UI&KZ7>QQM@%O7Q M^(*=/<3D>3M#G/ZR57+/JK890X;JGF%;JXG3#Q0 3!ITEPZ@2O% YC8'A MB-4@CUFC(9KM$08'^^T1ALJZ-;:VIO3[6ZG*UE;UWF0:C4&3(0^I$_$WQ\>C M5 / F#6.*'%\QP[O&6":P;.LN1&5 UB+V:YP:BX4W1%P+N-Y8P><) OJW4?S M>;!!'OH^-&A]LLNU6_&'2?H*@_B$KW?;M]MOGY?AD]]N>?AP^E$Y^.]EII<0 MQ7EQTL&I@3]&AH?2;O@#(/I\:7.^76L%!-,"_+ZTMFP>:(/M%^&+_P%02P,$ M% @ JH)V6.!3&\X>! \@@ !D !X;"]W;W)K&ULG59-;]LX$+WG5PQ4H">O92MI&Z2V <=Q=@/43E!GMX?%'FAI9!&1 M2)6D[.3?]Y%2E'21&MB]V/R8>?/F#>;M@\%?D@_VU9A\)ENM'_SD)IM&(T^(2TZ=1Q#XV_."R](#@<;W#C/J0WK' MU^-G].N0.W+9"LL+77Z3F2NFT7E$&>>B*=U7??B#NWP^>+Q4ES;\TJ&U/4/$ MM+%.5YTSYI54[;]X['1XY7 ^^H5#TCDD@7<;*+"\$D[,)D8?R'AKH/E!2#5X M@YQ4OB@;9[ KX>=FB]O5ZN9^M5S?;VB^OJ+%[?K^9OW[<#NET/*!DE)P>P3OM M$SX->*?_)V'Z>[ZUSN"H_/-6[BWRV=O(_OIS]^_&'T>? MC_ ^ZWF?'4/_[X4Z#G<^I.-*?.&=*.G.Z)0YDVIGZ1N3,$PU&ZDSF8JR?"*I M]KK<&Q.<[9#N"S9M4*7Q;*0%3KYS;"Q(*$^J#7!@XL<:U_S$:2K$'B[>$#R1 M@:Q0$D<@@WB4([9*_7JMK0P.0YD&Z(J0! M0UTV+4!.:2ED90=4BH-MI,,HI )# PSEH1EAH8)/QI-5%FC"JY(VQG VI"LN MI0TD C/DX4&=?7T_MUY,O[TV1+F%<)MG$X?:)XC/\JD3?6>H:;.3SPMD4+6 M$*^7*F.;&KEM:X2#N0]%VC#B2O<4B"X?TT* 8@@A;7AP%P1L M!?*S%RFQYJ .GFHW".)TS$$O0^6U\#:W M*)X_YC!&V3!>=5%]$4M4J8:N6ZR7X0%,!G0H6'5A3L0.79=$71L=[J#S&5)W MC(8=[ELDPIE3#DH$.I:T>IWZ0M32H38M&7#)P" H]51MT:+NOUP/WWK2XE=] MJ&*S"]W64CB2;4OJ5_N&/F_[V(MY^S6 T#NI\)AP#M?1\-.'B$S;8=N)TW7H M:EOMT"/#L,!'"1MO@/U<:_<\\0'ZSYS9#U!+ P04 " "J@G98^%JZY+D% M .#0 &0 'AL+W=O?%3B4L+JJ0;FYHTON3&5M+CT6XG MKK8DLV!4E9/Y='HYJ:32P\55>/?1+JY,XTNEZ:,5KJDJ:?>W5)K=]7 V/+RX M5]O"\XO)XJJ66]J0_U1_M'B:="B9JD@[9;2PE%\/;V9O;L]Y?5CPAZ*=Z]T+ MCB0QYI$?5MGU<,J$J*34,X+$Y8F65)8,!!I?6LQAYY(-^_<']'370^":$&JQ!3FDNRL9;?%6P M\XO-ZM?UZMUJ>;-^$+>?-JOUV\U&+#^LEV_7#_VFZ0M^FU$GW\'?387[XWVA1-O=4;9UP 34.WXS@]\;^=-XKR%D/XZE8KHZ/RT(VZN-ZZ6*5T/T3V.[!,- M%S_^,+N<_O)"&.==&.EM2Y M@UUJ&NV9&0*H#*CZ0FHQ'5^\8G.#0%*CG2E5)GE9%Y720:8"9KC.1X&7DR4% MJFR7(\C(E./H:-I*GJ9" M59"%AWV(!EN%E3QL4:+H\)0SAQ=6EJ<<.E5AFDI-IG'EGO,F!ZY!T\&I@HFE MK(G3'-'&1&Y)LU-D(MDS7H7T,&M/56TLB@P?$+(\4]198#KZ0H"C,35/7 MX H2GTG4C4T+S'H!5KC1F<(]%\_*':8OQ 8V+LI0(\WP,;N88F<[8(0O'/0G MK9C;QL/(!0A9U]8\*T:!V7PZ@*JP=V@15!95N-)M7.4HL)Y-.Y$-3^;=L@=WE@L41?E MQ;URC^*N(19W*'CH0-U4";#[#8Q0J]HJ;K38/8=6X_UUQ/I.X;B54K",#BP[ MV"E?5*JBG,_%@\%4ZJ%WYD>!QF0L9]0X'?84V)V M8KOV<_ :S1<^S:;CF 2-(U-; ]=SCB!*B0!&!Y+HDW(?6+A3/'8$KE 3O[,6 MSEIFL3>L231+T\"VO$6:A;]L23<#G M.;XJDZETT":8GF39'-/>KTT4;[^?X=_L.-+@,3--XO.F/+I6,,E #[2@:,_/ ML0.5Y@Z&GO N!^P^SA^P_G;8GT@LQD016CSA/8,J%*?1'#]R'0-%)'%T<:[: M\77H6G *^\J VJ$01U<[#4+4W11C3KG2<,J&D"5RA/?C 2K!!UZ/OP"- :+B M7A)2)EW! PJGW$<*E##S4%P8MS,@D?H1W&OC5$]#G!'(#ZK&L1=M6LF]H.>4 M>.>AK"VXTJZQO"VPNJ,H0H0<*CUS00DYRD):>>+&G<$UV!D.CH+1H9(0!#=+ M:XY](^.F@O6@/_#[#=AF+$3)P80;EB'$0P'^U(%FTCNCHJ[;C%XVKW MMCOLW\0S[G%Y_*7P'G,%:<#.F,-T.O[I8@AFX?0=']!DX<2;& \1A=L"/UC( M\@)\SXWQAP=VT/T$6OP#4$L#!!0 ( *J"=E@Z%IJ4S0D $<; 9 M>&PO=V]R:W-H965TSL[ -$0B9JDF )T++VU^^Y $A1MN0TF=E]2$R1P,6] MYY[[19XL57.ORR+2I^.&8WE<5^$D6S_9++:G1V8N]=-V MY89N[)^=U/Q.W KSN;YN\&N_EY+)4E1:JHHU8G$Z.H_?O)O2>KO@5RF6>G#- MR)*Y4O?TXT-V.HI((5&(U) $CC\/XD(4!0F"&G]XF:/^2-HXO.ZD_VAMARUS MKL6%*GZ3FKZ?>BGOG)1DAY0X M81]597+-+JM,9)L"]J%2KU?2Z?4N>5'B>Y&.V20.61(EDQ?D37H[)U;>Y"OL M9/\ZGVO3@!C_WF:R$SC=+I""Y8VN>2I.1X@&+9H',3K[_KMX%KU]0=UIK^[T M)>E_VBTO2XFC,1M*^OZ[HR0^?-N9?_E'*\V*7:@2(:ZYC9+K@E>:?V[WL%98S.BB)WMIE M=-?^CM^^9DNN&<]439OF*Z;:AKU3O,F86K#WLA%TB&:R8C_SJD62<"=!$\;K MNE$/ZVV:CLQ5D0F_H:V$73TF[5E_-)Y)(WE1K)AW4\;:FAG%)E$41E'$=,[Q MA#0@N:DJ2^!@Q3,D/=K5F>ENMA#(7GD3;VX_]\;Q)2S1))H$B4>1MI1R('DA M4Z@9LDI5/XBR+M1*");U]I)]RL)\+U9!MT"/ 79G5Q*%S\WN,;%FIDC*6M#Q MY(*:;/<6T[VC+UL+-0+Q: 2%L)6Q!M'DC6KO\EX;H'SNK+UK>$78M-C5/-E5 M\A6;"T8Z ( ?*'MF'4I MA:-K2K5TV>$1[>WG?\.E,@"3F>1:@_PB*SN&%6H MK"T$4J;)\1CI499MV3^'?*DLM19DZTIP\D%;%4)KA_=2 K!,&-%@K^,66; 1 M$?A12F,$^=$^W4)8DW,#7I,"V@A[PWE@PX5)R$#_FC<&NP,LD0U,!<^+G@OD MD/[HD($U!H6U\]8.^BQ%(WH_<$!E(!%;XJGS^ ;\(*QVS@HVG!6R92[3'%@6 MA460-:@G=V2;YUFQS7C>R<,=\1:Y)^ER3?"G7Q.2) M/Y-M.'O@C11(RU@A7(+V4?$*(5ZT&6 +V;PU8(-AA00WR0,JM)X-+;JJ@@9F M55O*=EF)?)1SP#<7HNKI MW(!Z]]U@J^-6NQ[5EK,J0\^S]0/@F/CR<[*>_S M4_*ME ^'^4AP[!TPWE=7#8/ TZJ%E[T>FR' K??M[BY3N3 ;E59)FUZ MA31KVE!/;W,OW-_7^DO+J^ZQ!*23(?@*_F:360]!YD/ZQ,=Z)+JHE&EU<^: M80%C3AB,)B)Z/7;#+JN @K)1A0BA'Q0\3JSUI-_SFKO6<)$"I0,AP^5+JHBF"[Q--C@OGBD:_&G3R"];=9'^E0-=(>] MW1C>=35V/*8HV]KSDD80U143U':(7 !/M=1O@EM7TWZS(S#VG(/?F.@#5"S( M5JW&=OV:V67L&H)%\(X7I&78-_H>\& ZC8.]8#:>SH*_N4 .DN,HF(Z3@P!S M^$)0O0M>)<'KX& ,ZOP*5>E&',UP:S8^B->RG[DSF.'?'C:"KY^VT,@:ZY'; M0-PA;7/'%[ 9,VCIW;&M\1VT\=L.\JZEQ.9IAG!>L]L_AA1BS5XT/NK936KL MQ>,XZ&X _+ZC<=TG5*^%?0U2K#SEGV/T$N6E;>N(K&B0YLAEXBNC8!=#,Z'3 M1LX)I3FRHPOXN0A>BHFMP W/^XIH> $*4):P;BM:?E?)_SQU6:HHM:^/I9;E MP;(RW#'Z+,A1Z[PTJ,5SP0;'V#HQ&<>H:CZRN(^L/J/:ZNI#V,4CT<0^?A-\ M'NI\Z0 *8-@T.#B,Z>(@F,Z.Z&(63.(I71P&APB0.)S,(L0SO*U;T?6LMC3Q M%A'=6(G^=EO[]J;@M:;3H4Y7[[M@L52P<;0]>%S7^(2N2W]^QN+H*#P\GMEG M\30*D\-#?WH8#$F-KL4VFEXSF@MS43@R8)X<-&NZ>Q?BZX7ACQ15CERD>5^' M.U,@]@7M@56F;&2T(&'*=4Z':F$,8L3W+[+"]I9JM.X,4"5STU.Q\DNN>CE'H7?Z ME]6OQ/*K3(#$X&FBWVJ2366VX2)KO&+>GNFN))'8Q5M2QU -D)1>D-L YK*P MB=/5V;7NOONE_+HVT$%DI],X#M=Q 0X)!R>]& %1[M"HV^[/O@NAWHO8)DU+ M/$*78R.B&V'51A/U!,3)P7%X@,*Z>U -*9 PIQ9(#2A!$=!QS1WT?"#X# JW MYC;JW83<"Z^I^+O:1=6;4K13S0^_?<>.!'G453(G(RU4EUU(^;7&5)75/0T$ M;M+RPWS2P47^\?78IP7*Z9AF-.(2D(&-*=6(HJ!2@/:$ZK=Z VS3? MNRF#B/DH2]@-06A3_M)!IEJC#0XGI8?P.7/<+.N-'\ _P*[35 !N)WZ0?'>_ MSR![,YG99 2.M*GPMA %21E>JI;&L[4PF(MBN]9B^#K/#EI/"[0?\GT@;[8, M0S&SC3<>W?O33C1]6F)H0N^%">S;LFUOSO<''S=*T=S93S@4P;#!?>?H[_9? MB<[=QY'U)Z2-O[A 6K! +;(W&AP(I# @ D 8 !D !X M;"]W;W)K&ULG95=;YLP%(;_BN5)NUK+5SZF+" E M[:9%6J-2ZWKA>2HMH2+J6M3 S4XN9$6TF12C'R=*M M;66R%(UFE,-6(M54%9$O:V"BC7& #PL[6I3:+GC)LB8%W(/^5F^EF7F#2T8K MX(H*CB3D,5X%B_7P'S709X_<899"3ANF=:#]#G\_4^J6" M*?=$;1<["3%*&Z5%U8L-045Y]R;/?1V.!,;GM"#L!:'C[@YRE+=$DV0I18ND MC39N=N!2=6H#1[G]*/=:FEUJ=#K9F/)F(-&#)!GE!5I)27@!INQ:+3UM3K!Q M7MJ[K3NW\(Q;A.X$UZ5"'WD&V;]ZSY ->.$!;QV.&MY">HVBX!T*_3 :\8N& M="/G%UV0+OKYQ42CC89*_3J5>V<].6UM;\]"U22%&)OKH4 ^ 4[>O@EF_H<1 M\,D /AES3W8- Q3X^^E5< R-5IFH]?^E[G#'#7/"%(R 30>PZ:C/5\&O+H ; M-WT-;C; S2ZJV@-(?4=D0;E"#'(C]:_GYG/*KO]U$RUJUW/V0IL.YH:E M^66 M %F/Q="'R;V@.$GE/P!4$L#!!0 ( *J"=E@)XX&PO=V]R:W-H965TOKQ5?W_;=I_LVI@^O]O4C?WAWKKOM]\^?&@7:[,I['F[-0U]LVR[3='3 MK]WJH=UVIBCYI4W]<'9Q??\V?ONN??MT-?5XUYU^5VV&R*;O?2 MU.WM#_>F]]P'[ZO5NL<'#Y]_ORU6YMKT'[?O.OKMH1^EK#:FL57;Y)U9_G#O MQ?3;E[,KO,!/_+,RMS;Z.<=6YFW[";^\+G^X=X$5F=HL>@Q1T'\WYI6I:XQ$ MZ_A#![WGY\2+\<]N])]Y\[29>6'-J[;^5U7VZQ_N/;V7EV99#'7_OKW]+Z,; M>HSQ%FUM^=_\5IZ]>GPO7PRV;S?Z,JU@4S7R?W&GA(A>>'IQY(69OC#C=+RM@'WS_L:3Z\]7"A8[^4 ML6='QI[.\M_:IE_;_*>F-&4ZP$-:J%_MS*WVY>SDB#^:Q7E^.9WDLXO9Y8GQ M+OWN+WF\RS^Y^_]Y,;=]1YSSOV.[E[$?C8\-$>R8LUW8VY]_SO M?YM>77QW8N6/_,H?G1K]^6]%0T)#XM'GQO85L:>Q>=&4)"G;MNNK9C6VXK\Z M9OYA;7+:S;;H"A:J=IGW]-&K=K,MFMW?__9T-GWRG:7?&TM\4]((9?YSU13- MHBKJ_+JG#S"^S2L(Y*+M2OK*$,_W:_Y]:'B:;5?1&]N:YE^9QG1%7>_PO=EB M0'H7DWYL*OS&@]K\/B:?77SWRXL7[_C'Z7NS&-(.2QMR1?K3&GH,T M-$%$N,ZPOBASHM.Z(DGNJ@41 6]TE<&V,SA=ETMUCGT M-W]#2ZHL?AT]N$7;+.H!*E=VY![ %W0R Q^$ 7V4@H9.0VP#V&&PLM)-\P$XA!$D?4V9VUMPU- M0MQ'Q*Q(RL&=.-B#,7X]?W>>WR^R#^:.2%M7&]9KI&-[4GUV76T?3/:F5ZGT MK^8G7SV<$QMZ1=J^+&B(ON0A^/>J:(AJ'>E!IMD#D:?1O><_D77[^]]FCZ;? MT2C7Y[_R*->TKLJNDT%(B.N:"-N;;J'JQ%.61L[(PC:V6(BDK8L;:#W3Y ;; M:0K5^,E9GN*[*\]W5R=9Y4>3L@>1A' >H;@FOX[.;(P'OW;@;&Q@/I>/_V * MO!@ ,\C*D [LV6U6K'&)M5VG#@/L/W%AUY'RIZW2=#>PU'0<%9D"6M_2ZP^_TE%V.3GC M.$[\J\M@YB(^F:44'7U4-5Z):6!/:$(@E)8^*'\G)N$3X$.]51,>6&YH.G#' MHJJ9'P@8L6J@#TVU[05G5,T92WC5ARTDVFK:],T6G\B-VFSA6 MIH5D,,&F%V?_8-$A^S ,4\IGA=5_*_F2TV%1RQA03IY"9.-9>)A6VQ, M5FPP&>,-G(/-FS81?OHDYH'V<]-\@9 "2G4&0(C>IM-H:$\$J$Z([E,OND]/ MBR[VR-/B!V PPJG'9/)/#K6/B1DG63Y#(9)57X: :C]T5;\C1B=;MATZ.G)V M!I;*G1MQC8D<-="PX/O]^=AT9@MB19*>1=&5$U+'<_U98!OB&X2:"3^SE"WA M%,0&E267V'*!68B;9#;BOYQ(;VB!9;%S2@#\!4'X3)L1M5*%$#E[%%C_+(=YOURJ+U2.3YR\++A&X&% MB5,N+X0W:&QB\)9_)&N'X2,74.S81SI,Y=J[>*W?>MAW( M%*EM@\YJ;>5-[^%.Q<,N5D;U;N:>F<1N_KPH(:I]Y._+XB%?ZD%'NCM89N]U M\M/;PL)SK%T44V9@ &\*6K7CL?,\BMYHT$#Y#L-'"V.,%COM%5C3\L;%C NJ M]($&D O4$HO=MUEI!&4>)3!'%[JB-(GXK$W-O#O"&G.S*.#OCAP @]J#L0I% M)#!"6#"K8K*LM'G6O_SEH*:])%K4[1;*;8\6LNPS)@F=TH+>+V"6[U?GYIS/ M.;/DA-0$&DCB/\%L(QI(YTDLMA#)(-X(@NX\0:7'%D]7 V@BNN=LEHBU4=H/D[8 YD3'MP7.F:EONU)CY59,! D9U,G M9Z?T^_0B1)LO3FI@YP@M!D)QS6(GIJHN/+_'IFLTXOP?'#\__;0'/C;6]Q'\ M N A85[**%GLZ9_G[T,$+D9%G?&3,'.2F?AX?GU.NKHF+K,Y@F/"IL0P'92, MN=.H5/#-L^^+AS[^8)AD&!OCO M2I$R$H'%IW5; Q!I/)'Q0;_S%JHO[G@"7CV@N"7?$Z\?<"YO0_CU-IIF>6IQ M*P37:);87@@Y(-[Q<2*<0Z*][]BJMCGN'W_.\Z5U*EA:[-/+>59D*X;-P&>1 M289:U5_.CTT*)0#PLB(L<]]GO]"7UA/(K]!< CS M^CBYG?3L,T#KG7I=8<;8Z&L=A).*)DIK34\J@O<2I.<%DJ(]%DW\^E$4%+WQGL$<+VF.9 M##DBH,IA9=9KT0.*<,"&"%&0E031&8\OAN]A8D5"WNO 8@3 6PHOH)@W6E8BD4+6D6Y6\R= M7QDPV4HF8J[UO%Q%H2U23WZ$\_R-^Q'/>&^ C2[[52YW .=>3E'"7P[P8BY! MHV;BPT3S791"P:DOAW[H4KITACY"_N@%Q#(;06XX;=>4[D>.JDGPF @*#RZV M"Z6!=)O Q9*Y%.L70Q4]@Y?J2%ZCJ$%R87)80KT(#L?'2RJJ0S14$[+B:AU, M@;7!]+N3BG*]\3EYC.VRKIB8YPD3JO46B^O0%\8?Q\].52)LDZ^JI5 [C[JO(,+4[ E$J8%P>*;P9UN/\81T% MCQNSL>GSY_EKH!QQ6">\AS#6G)S(3P1A/89CO9454.U<4- BI>%DSNW?TQZQ M94Q)/_HQK7I*\7/)"B5#&T-C 5!M(VP*8F0NQP=],;;U0W:RX_Q$FK\Y%%F- MUR*RZ:,B*BECL[F(A\.LY_F/@O&]I&N@/P&<-&"@BI?J(]]+G-V34T[?VQ&6 M5^8+MJ8CVN88H=SN= LS[RP>TF4VJLEFD\^1Y=&APDH#/C]6MEBM.K-B<78, M_MHE$J LV/Q)Z,9]O_PJ+P0<5";SD+9?F7;5%5OB,%C5PD9Y\6^S^PS0V\'2 M$/8!TA>7G,/(DJJ5[)OLZLGDZMD5_?!D.KFZ>IQ)6C9_,KF\F.+?9Y<99\N( MC+/+&?Y]\B3S!@SO74UFLV?TP].+R>7EX_R7L"RU<7&L9\_>U:UZ*K>< 6#. M[:"=07VOATY"\EF Y+/3>='*2IQL%(A_X;O092W*/W);W4EL6G/]3@N4[M%O M\^F#[#U2#?4$$.PW\!4QY,.?.4=$#OJVA26: )B]U*J42?[H 0+\BGPG^>/X MU_Q=UXJL73W(?]ILZW9GM/:G,XJMG&$(2_,KD@Q/LXL^61$7$_6)S/FRD"QY MR\I*% ;9(MXG,MD/4I,V80$C*9<'GRB3"_.J4M +Y%%+&'OG-<1 M$5#\!P&X&)S>9Y-9MKP!PD.YK=M>W&)C.&6# B?UWP->PH*M(8'I3F9#IJ$Z M<7JRA/#Y6Y_T4S,T*CE?.49^\$DH>@$'8@?TY<0YK9JXW%1-A8 ('\6BM0AW MAZ31+8=-):'1F&75@SPFK8%X@?Z7@DWDN1)0$-1DDDG3Y$G932PT74BYWUD)H)49]D\Z/G^?\R4S[^WEY:"10ABQJ_5TEF8 C!0_&VNP*' M<(;E:0PC@F8>70_6( %5(UK@,) KJA1LQO%)CH18F.93IQ$JRJ:GJ\!>NY3Z M*'V_\-T\_ 1WUM-(S.8MER5(N<%9!>C+/R'*Y_WHUS^_]8XT* O%@6,BL%!7 M_V;]S-['Q!?>X)6\+G:<2H#O6%2-ILK]S&JP:R0USE'#5MFU*;-5VY::8P&V MX91D7,LF"TC=')>5UJ)1E@>V(#[$O"=2G!OF4K,2RJ":#[P6Y$U@1V]IS< \ M7*9 6\*;M9=B"+;'FA'L4G;$X[K-MF=5:+ M5RQ>&+.'"M,(EJ+ZNN/6V5%0@^A"()\Y\ MTMW*.3/J*D9Y1JIR92DD,*1TYY;4E38NN(+-3-T9V;CUTTZ(9^:MQHK$*G&> M>2'Y75F^))G6IB"G[571=5SBRNMR&5Y7A@(HTQ3U[M_B*DQ<#,?<];X4*&:I M\*JY6QA3BH\XSNE$DYO*^OCQ!HD]-IS>%UVXM858C)09N_/(V)U=D9+K:D"0 M&_1^"';RI].SI]KF(559+;/>H[3[U0/RGC<%XD8B./?-^>I<'-A:ZAPGO!O+ MD6F[@)> E#J_)"$I0AM=<793M;4)0O_QGU[D:RA(LCWW*YI-5P32-28*+&S: M&Q?BXI"E!CU9K>J:"'S4E0^82'N*J 0Z-,8"*J3"@6P6S9 M^\G^& IYJ4-M%+(:.]4]K5>4I4$?P,H-5&Q(UX<>R%+^!-E##5,T9RDQ)DI MER;R]=<2WX6GUREIND\TM,J*.,\^.^Z5)G#31&O3#1>$"?V2&GB2Y+IT]7/T M/;(M7*K@"P*4CC).*#'Q 356:1(5VQ2_MYTR0=BC5^HNOKJI?!93!8XF3I*. MB&:QUT?;X!KBT=X 4N*M1423GCK(#"WK 87Z6A[_"V0JBT+ PUZZJ+#1BJ50 MFCSJ(0HG<[Z=M;GE8/)2J$R/A+(;9?OSU%1OUSN+['Z]RYW3TM]6W&ZA#0S* MV$?*OICA2//5%+\(SJO$3T:ICA0&1 XN#C:$_VT$K M_.I,Z=W5U9)7WAG)9?,"D/V' MFTXFR%7E[L6;[+K5BEZ)=3OW8,EUH?O;1:E < 5ECY-1"F98\AX%T2JD4$FR MJYU$(?P#7B"E2GFIZ7)V[UGC=Z&E"#G8L#2E=+M5C8US: B%A WPROVW3B?+ MEXG?Q@JOTH)YM2H[+UNW1F)#Y@X!*$2#N%2MR61P.1?_)=0ES\ZKH:W2*OS4 M\@;FB5KJ>CYK!$-(8GG =XXZ_MP*US8%] S>*LW='I%\%"IJ'5(E>V"E]TYI M*6LDT^)2YX4-)2X)>X7@L,BYBS?MC2@H6C!&B#T1/NXD$MPE\AA'1XL;4EJ* MF1V+RGJ")!_DO)O>1U9TMG:+/K\N0UB[.B*W2[77^[,XB0Z)PBQLSV&LA'JZ/Y!O M9']$=Y'8B%(A71#9S@,] "=QOVQ*2O5@6\AT@5,&SE&ZN/C>Z"'R8;A?5(*> M^K*$/T06B5-(;AD6@P:94[!J\Y/SD;P4^S D-##WHL[8B\/G+&UQ]YV?TM&, MY[;;ZX4"=_HX'JH'R#*?;MCB'.G.YR14@) M9<\NH!J>(N._T# C8:C"VW6)QTH9M6])71D&2+%FCP%!]K;)K]$VS(F=IY-0 M5,:XPM7@%=SY"F\/LN!>][A$<(Q2C>2LSW^MYAQ-NP_M@891^?AE5ZQ6#Y"I MXE2#U,Y6OG96:.[F<*J2]0;F=@Z0Y#*& MF?:UL"O!BV<*:A$J>A(/C@NG3%\=?.X7?ZM:OM@8[3P#Y[4=%-52?(V1,]XZ*R3F+)WO#$++8]S7[7$H2<=J)8$R>(\#;>%4)+46?R*%[JG=#/H_\XPM MX,M[#644X!H/1>EJ-,&5T.W#&.+Q3VAU@9HD$?G!43H*FC=1ODVKB!#;B)JX M_-T$^:IKAVT:F;:]N*Q,(J]Y.L,ENZ[93H(7843 .@1I3=AG.I_$%7FZ>'ZV MXXQ*H\?]9042=AU)# 0[.8(EI-%FIS BRA7*![R&]'J"Y/12*G $Z,BF_34+ M>[O7&&J8S6TI:@'J-2Q95C=BUJ)@ ;G_RZ\_5':_-",L@Q4\H+/O)UC2(4]) MGSE9&Y>'B%;SG1;@>73CU[NDUU1M:$?%F#J)YY99Y5Q&II482,W! #R]Z*19 M.#E5;PTXMI6GY=36"6PCA68+UBM=U!R9Q;I&^F=&U0TM; 1$">W31*EH8\GJ=TB'X=P8!-U?KKK)FQRT8CK1))5$&5=NJ=U M( 26?>A8U50VBQJ)_%TGF] (Y*[B\*%-*Z?%Q]TZ-@PL.,$IW *8^[M?_.T< M^$5=OG QAIQVQ"O:AQ9.E$LYHWP@\VY<4.!G#S%0CZB_ME>@:;.(\QQ(=@6) M4NYT$F&$7M/IZ0[1G[1S%<>G&8-:2=7 M[U?463J85,FRT(1K'.(9JF6^;9%$DD:W^%VMJ2XQ(;"_^%F)1"P^Y<4ME[/Y M$/ ^B'3>@ZA">@%B-^$J5EZ,5-(1@*8EG/FYK%F@5U=:/%QHR2\439&'3V8A M?9U6*O=K=R@> )01%:6LLNI<.8N0:PZ7)EK2'N5'<_!]QZ&)G>Y492:M/),D MUK97)B)/KXB+T=X,&ZBOMON62\K$K\N^R2XG3ZZ>TO_3R6SV)/O10 ,T\IPP MJ..O,\=?1[DJ>SJYO'PVN7K\%#]=74XNGUUD/Z:GS)Z-Z6ZJA3D3-CXX1SUX M[92%\GK)1>MH->6F!O1Q^BN1\G=T[+2+V12S/KE\_!^9T;B"K[V)\MF3"5QO MTD"/'LTR=W)?3J,?;D"C\]>S1Y?/6$=5^0-'=9 3+HFIKB6-:15;/F MUN7J-QJ.)(FBC]A3FUY,\NN1KJV?N&N+>XNFT^\R_16B1NI4JTEHV_:4(@TM MW]/3/=E2W'B ]4>UZ=>-Y'R-,[*%OLQU;%^FX^/6Q M$.4XY0]KV"^F<:\ ]XJ2^*0%LI+9^7R0\F5LI7SQO,>RAZLY0C()X;A&[V)L MJX+8C^W$)P.]<]*8NY[PVXW"#>GJ4:M[ZN["T/PZ^TQS:@*3 E*L&A+BX>CU M,7]]5$0G-(X=8S4$<4 N;E2NT)_NR^7[T L3&?6Y:\(6!D+&.Z ]8-RB*E58 MY"**8J^H7O/,==))2,/VMV2<,T67N"NH6E3;(M1VADOK7(*! V0"#?RU;),D MI0K=RKH0J6V1J]+ M9/LE1-*;==BM12.[BS.EW0DZY\S/&<>2#^<7A<"R\B6SN\[X\<;C@-S2L=)U MMUVV-TRZ!2:GSND5+:(NLI[O.,^F>BS0D'W"L#VP3='P]2I( LVY")2=W^@A M93X@)$>WRU&Z#;N%@E4E#33YDBYEX^6-:Z@ ME$ NF4 PR>SSTRW3KZ6!O2_NQHM,ON+U//FEZ)+P%&[" !+Y MG;9IRTHL29RL$/2A@9)0^<7U#.Q#.?2!?M.HMFEE6.8DZ$48FK1%MTOJNGR7 MO%Q!*E\QK4FN>Y&=[J)6?-\_R>.$2+C+-P@Q M]H+,7HXCDDFTAT91U25)O ])<:<$PPE. <9^,O7N#*)UQM4F)/H9EX? L&L# MGV0%#IY7PBTB[ TT"RF,)<9#<=N$\Z-U-J@3<)I5?78(*!*\18O= @M]Q_RT"?C/>/8^>>&ME, M^LE9V<:A =,4TKY*;THHCR1#/5\U *(3M-RNY:S\&*]+?"-TPZ)_KK.:Z7"^ M=),P@-'X3%PWXA:RU\'NKAO0VX79?H;$M!+C)><-_=> M[W9K4++.B*MWO<5:M ZV3K! ;Q;KAC';!F)@SR/M[!='FQBX(((40#&^H?@J M#:!QRT5C+F'D@[1IE0T?8'0&4'CC)+;1/8M:?9OT?Z^-V.10[.L"\B.7J:;7 M=*' *ZX6HMUDT6V<'LBA?]>$RQ(WVQHN%NL-RQ<@NLX^OP/!RYP.[;0C%XV@@>3Q3-HD4I[MR0W.<5.X0Y\5?UN8$"5>7>" E$ M!0HS%T:=BIR%O^&"O7C-OI%B1$UJ@V22A]:L,Y-/U5 46I&7D>4AM='[2T)? M8].(\[N+<*XE9AHUFM!:.*4SD!7I$E;2H3 9R5A=&]@")[.*H)-3F207\?6X M_5D:'Y^*9*:4I-8\0#J=]0J7$=E35S\-C?$@GRKX9*_D1# M2"]&!9%1V;2[ZCI9C]<#/<>)Y!C1#%*[T^'PNMCOX/:+US%&<$T(OB'8MB4(G\&0WX1W)<1^ MJ\/BQ"_B&XCL^-+!"RH-7@YZ/XALN?K>$#\7* M\D39Z#V9DA7ZH@M+79<]8AWIW:Z^G!MVBZ0 M\M-K'VGLN>P'Z^2 ]C>7X;I,KK!ZHNN:)I$D?KD7JA3IQ+G^G%G0;%3ST4Z_G(]"ZPUUCOUW.OB#NFZ%:6I)#NF^GY-#VS:72( M\5^G^TTC4L?P/2?YJ[ M/Z'Y0OYP9'A<_O[F;X2=<1MP;9;TZL7Y$^+M3OZDI?S2MUO^,Y+SMB?-P3_B M,@G3X0'Z?MFVO?L%$_@_+/K\_P!02P,$% @ JH)V6 U$1N[0 P @P@ M !D !X;"]W;W)K&ULK59MC^(V$/Z>7V&E574G MY3;!@02V@+3 WA6IQZ)EM_U0]8-)AF!M8N=L9UG^?<<.F^Y6'*JJ2B@9.YYG MGGGQ#..#5$]Z#V#(2U4*/?'WQM378:BS/51,7\D:!'[9254Q@TM5A+I6P'*G M5)4AC:(DK!@7_G3L]M9J.I:-*;F M2*ZJ2JFCC,HY6'B]_S7C7M>[(W="*?C MFA6P ?-8KQ6NP@XEYQ4(S:4@"G83_Z9W/1O8\^[ ;QP.^HU,K"=;*9_L8IE/ M_,@2@A(R8Q$8OIYA#F5I@9#&MQ.FWYFTBF_E5_3/SG?T9'7^#DCR.8R5*[)SFT9P?4)UFCC:Q.RLB@XJ)]LY=3'-XH#*/O M*-"3 G6\6T..Y8(9-ATK>2#*GD8T*SA7G3:2X\(F96,4?N6H9Z:;Y9?5\O-R M?K-Z(#?S^=WCZF&Y^D+6=[\NY\O;#?GPP+8EZ(_CT* UJQ-F)^19BTR_@]RC MY*L49J_)K<@A?P\0(LV.*WWE.J,7$1>079&X%Q :T?@"7MSY'CN\^#_Z_L?- M5AN%=?/G.>];[/YY;'N7KG7-,ICX>%DTJ&?PIS_]T$NBGR\P[W?,^Y?0IPNN M65$H*)B!G-S#,X@&SI&\"'.>Y%(0LP>RDR5>6"X*8FP%!'@#G17\H-R!(S"E M"=C<$LP,5%M0778($[D5*.&:Y._8;H^D %DH5N]Y1AAV$DWPU]K3U]X';@G( M1B.$_NA9-/N@WJ/@5G]C$$9[/WI)&B2C!(6T%R3)P)LSP7)&TB".>O8YBKT[ M)*I(+Z QM<\T]5;8YS0K'4":!)2.4!A&01P/R(7$#+K$#"XF9BZKND&"MN'( M'9DQ;7W$6"QXV5CVMTP)#*HF:R2VV:/[Y])VTR(58)3SJ_?Q#@B\9%!CC"PUDF-+>9N"55.!8D:J:Q=(+M , M8 #C($V&^,88T]1;@)#8JMIS;0@.KCM"_HD](T !EE^%,7)F-,%IH0W:1ZK> M$',Q"I+!T$I)C'F,/.<<=F\"NQVV-)#.).U9SP15B2"S>!HNW+>9UR01Z07O6:AH/_A>+4-6E/ +\TQ"A M:="+(D)IT.]3[S5S_SY&Q$9F%(S2Q$JC?C!(TK/5&[X9#)BYPHT_6QR-,.V, MZ':["7O3#I:_C[?C^2M3!1>:E+!#U>@JQ1I5[6J4RME"W'> M@ ,D:*EVI;94I;OWX70?3#(0:Y,X:SNE_/L;)Y!MKR^Z6R$%VYEYYGG&'D_& M.ZF^ZPS T*3C(HN#Z7%93X9B-5P0U.U;:G*P4\;9R*O,?Z M_:A7<%$ZTW&S=J>F8UF;7)1PIZBNBX*K_1QRN9LXGG-AU**@HHM9 E5;"9.#-O- ^L?6/P3*!7BQO[I:WB]N'%3U]X.L<]-FX9S",->XE!\AY"\G>@?08O9&ER31=E"FD M+P%ZR*\CR8XDY^Q#Q$M(SJGON93UF?\!GM^)]AL\__^*_FNVUD;A2?G[+=DM M:/ VJ*V>D:YX A,'RT.#>@1G^OMO7M3_XP/*049G2Q8]:5%@DIIFM,JG,)P.JH->"KT4NC #]EI8/H[VMI:- 3D5)329K MC3'U&<'M@6(-JMNB5RN,+$N:H?6(7(E2X'%-Z5;*5-,,\I3BW4(USX&<$-]W M_;!O!Z'+_(#<\QT>=U0D>*X;C;;**1*HE$Q :^*Y<1R0(0M)1]"^QFW$F\,0 MY@ZB(3[[T8 \+!]FUQ8[=H=#WPX&+F-QEU'R(J._(G->BSP5Y9:>T*'+XKC] MCR)RC1A(-0B]P_,:\"[))*H7!4IY!!O2JAG$8?/LDY=[6_ DPVW"] _< "6A M!M\C5[4JA:D5-#8;\63'&E\&(;//V"/?(!,)EC+QPH!X?DC8P(WB@?WS6(!$ MM![A[9C419UCIE.\U'#3$\'MM4E./33#0&U]&O9/XKI@%1 M5P;!=K"AL6^82_US(NG^FG\(3]3P.UU$^\ MQB2],5-$TIWY^_4[IDEB2J M1J!%2Z,M@26&42_,_DN&_I74(S(452[W ,BGW?Y$:CR(PR$CPSC&O**]'I@;#3SZUL7:>]8,"U#; MIN7K]G2U?;%;[;XJ9FTS_6G>?I+<<+45)1Y9V*!K_SP.':K:-M].C*R:UKJ6 M!AMU,\SPRPB4-<#W&RG-<6(#=-]:TW\ 4$L#!!0 ( *J"=EC2=Y'P;P4 M +8/ 9 >&PO=V]R:W-H965T6Z*(AXOJ(YWUQVO,YNX2M; M+)5>Z(\O5F1![ZGZ8W4G8-:O4#)6T%(R7F)!YY>=B3>Z2C2](?C&Z$;6OK&V M9,;Y#SVYR2X[KE:(YC15&H' \$BG-,\U$*CQ]Q:S4XG4C/7O'?HG8SO8,B.2 M3GG^G65J>=E).CBC<[+.U5>^^8UN[0DU7LIS:?[QQM(&PPY.UU+Q8LL,&A2L MM"-YVOJAQI"X+S#X6P;?Z&T%&2VOB2+C"\$W6&AJ0-,?QE3##CS_S4BTE_EAF-#L$ MZ(,VE4K^3J4KOQ7QFJ8]''@.]ET_:,$+*A,#@Q>TF_CG9":5@"SXJ\E("S%H MAM"5,9(KDM++#J2^I.*1=L;OWWB1^Z%%P4&EX* -??QE1051K%S@6PH)AB=2 M4B4Q*3-\R\B,Y4PQ*INT;L5MUGJ294S7 \DQ*VU1V_I:$)%I'=22XBDO5J1\ M?O\F\;WX@\2\TE K-6IH4*0)K28 M45&ERLF*CPZ4.4?6L2-4.7S_M=6.& KT%B7. 5 #QXM] M&'TG2;Q*OP:8@V =@'21%Z+?>=E-3]0Y=DN-S<%EC25R_#! L3.(AD=.:I!X MR.JAGYDK: Z*;,N4% MY*F"5"YT /Y_KAZ'(-5R]HOT"8YE77UO<> ,W<2,<1 W\]U .3-A--LRXB[N MHOLEY$G75&2[D"X.$O2-"*9/B1HM/O/.F^B'7HCC88PFA4[$?TAS,FY+I8$_ MQC'X%!2C( -83S.DVMW;. D@6O&,'&UNKC)#%:F^3H#P2OR;+RD M^U5*A8);#;1&DB,0I=N4(D\ZCUDIUT);X@!_4>C;!5!A?0E2M+0;NL=Q:*8 MM"1B >""YH"18<5W#E@(:O(%(#=+EBXU#!1)I5"&35)07 #]6MC< C_JI9;^ MT&NKEZBJEZBU7CX3M19,/6MY-M5?.8Q:X9I+Z+0N6J6BHY-25KUF.SVJ(4 < MF%X9)3'D0%9[C^8D1Y@.P]",2>RU??096KL4O$X/)ZXW: ML4@4V M^8G3[&%WF;K>7::^0H=I"NFOH_U4(+^;UP_-NN01G+>@T.MT,]QW)W/(G#U3 M(N3YZ/B0DCCH17C02P[O#A*[/1=^PU/X@\MC QY@X7&PO=V]R:W-H965T=7W7C;HY$T5K=&[GIFIT+K<[4RR7/Y--% MRVOM)^[%:FUPHCLZW[ 5GW'SL)DJ>.M65E*1\T(+65#%EQ>ML3>\C%'>"OPA M^),^&E-.17/,O0$,#XMK/9JERBXO%X;_V3 M73NL9<$TOY+9GR(UZXM6W*(I7[)M9N[ET^]\MYX0[24RT_:?/NUDW19-MMK( M?*<,"')1E$_VO-N'GU'P=PJ^Q5TZLBBOF6&C!$@4&9 M&05?!>B9T>3+U=WG&SH?_W4SH\Z<+3*NV^== Z91H)OLS%R69OPWS'@^_2P+ ML];TIDAY^MI %S!5P/P]L$N_T>(U3SHT\$ZI[_I!@[V@6FA@[04_L]!_Q@MM M%##BW[JEEH9Z]88P2X9ZPQ)^T8(TT%P]\M;HPSLO MBF(U)(XH8$IN-2M2W29_0%7PI#,(3XYY.KK5*\ M,$<(G$4IU!Z23SSEBF7D/8D'/OQ[$9D99CCQ8H_T/ )I"$E6$,_UR2 B]SR# MCRDUDC[,I\0)>J1-_)AXIQX(H\XU7W+PES:ZHXX?1;1-/Y;.J..Y@7W=N:,A MC)T@ZMG)N32@ GM59Y.^I_U^'_[!.6T@0UB1(6PDPVXK+SF$B?^0#(VVZLFP M,[DH';PBPA/3%")/:#@,PVT&^('Q(G#B#J5ZQ@*2/],(1?3.9W\_$M2/9.PQYJ M>*<]-VX*2%0%)/J9@""W;Y9+:"PV3^8\WT@%+8U>"Y@%@B>P@9-\@RT'MJNB MX9'Z6&L.VK!;]%:PA MH5Q(]8+1]+ H]/H>)*I,OG[$9IQ"PD"]P7(*#D6(VP"@!%/5BG_B1A_[5%J#Q9T2&'_HNB0)RRYE]=]@TH+!+^L M-8:Y$O1PGZ-@0* 9P1K-BXTM_[85FQR+=\J!:HDHM[R,2"G_MNLC8EAYE,8] MK&0K?-39R[ZTL1-8XQ^;DK=?)6^_,7GO.32W!"R7BX8=*',8>8\I>8_5?ZED M;DO.%EEGY^J2LMF3/>M2 3F %/S.J=RJ74:B8URWJAQCF=65Z5!/[R+?<\[H_O^]M"9=8YB07ROXY*3_:-L>C9Y95*V-HA1V G@F^-V(M(^ M(5,.Y]\"0X_'ZRYB/BH?Q._T0-CSK,[5FA4K+#_U9(TZ,5IT?!>D83 I#)C1 M0,B"/H"$,I!R-AQ3J85E&*"P.K[%.SF0*@'B"$ASQ^] QSZ![GP'&Z@LP2$? M.GWKR>V$^#S$6MDC1;_C(6B_,R G#>2**W+%OTBN^M74EOA&T_4E?ES#+&3/ M@J]$46!1LCE;I':88SU$D6T%RAYA]J"H@Z3QW3,X2-F1=]:V_#VJWT>->3ZE MT# .KG:^7X"I6 ]"UU;KD/RFL'0Z*8=(0>EK(POM"%O,:P!B7X&AWW E9 H4 M@?B1_H$ANW(*9S$(*(6#W@X'+!(1[+P'<5QBJ"T9W:.;4L[5RMX'\=0+^U-> MFJK9ZLHY+F]:!_'ROOJ9*5B_IAE?@JK;Z&ULE57;;N,V$'WG5Q!JT": U[I8 M5E+7-N!&:& MXUKI)U,"6/I<"6DF06GM9A2&)B^A8J:O-B!Q9Z5TQ2Q.]3HT&PVL\$Z5"),H MRL**<1E,QW[M7D_':FL%EW"OJ=E6%=,OUR!4/0GB8+\PY^O2NH5P.MZP-2S M/F[N-<["#J7@%4C#E:0:5I-@%H^NA\[>&WSF4)N#,761+)5ZCO?H/_K8,98E,W"CQ!=>V'(27 6T@!7; M"CM7]7MHX_$$CGYTN'C[=_/+^TZ^W=_/% M=_3N]\V%& NQJ'%(YQAF+=PUPU<\@93:)D< )OT 4\\'B#_Q/PG[.EL1HSY*]C(3> Z7% M5S4CLV$Y3 (L"P-Z!\'TVV_B+/KA!-VTHYN>0I_.7-9R^T+5BLX!2?+<0D$7 M5N5/E,F"SA>/=%8S79ACU$^"'Z<^VQ>H.]*6T!2.HX M .NPXV!><6"> ^6& M,H.6 JO=C,BB9.A!O_CB0)_9#C36.CGG$K'5UJ"[N:#>C-XC,)!K)IC,H4=_ M9G+K:+3:DS2-R1G)^FE&?M),(AQ)OH](VD^&!"MT!=PMG2?D@@S[440^(U6W M$$<9+F7]8?P5&[,*JB7H+K-(AK\S=,0,/B';L)-M>%*VWY1\M_/G]^@"[Q4# M>^>:QUZYMQ4[B?N&8L9)]9^0>DX]O-8:!=E*#;E:2_X/4LA5A3W=,-\6TWJO/ M6O5?@&E,%4F!H6N;9DW.<+FF?GM$'@\YWST[RD PL)0,+V,W&)(TNW*#C SB MU TNR26*&/<&6714Q?"@45:@U_XY,'@'6VF;GMFM=B_.K&FT7\V;Y^HCTVLN M#16P0M>H?XG"Z>8):"96;7S;72J+3=P/2WPU03L#W%\I9?<3=T#W#D__!5!+ M P04 " "J@G988+-LB>\" E"P &0 'AL+W=OV@4[:AY_MA$#5D+%VO ';\?WO9]_E1 DCTF&=4C*Q4RN+"MD64 M0H[%&2N JB=+QG,LU90GMB@XX-@8Y9GM.4[?SC&A5N";M3D/?+:2&:$PYTBL M\ASS7V/(V&9DN=9VX8XDJ=0+=N 7.($0Y'TQYVIFURHQR8$*PBCBL!Q9E^[% MV.UI [/C*X&-V!LC?90%8P]Z,HM'EJ.)((-(:@FL_M8P@2S32HKC9R5JU3ZU MX?YXJ_[)'%X=9H$%3%CVC<0R'5D#"\6PQ*M,WK'-9Z@.9 CE@GSBS;EWL[0 M0M%*2)97QHH@)[3\QX_51>P9>(,#!EYEX!GNTI&AG&*) Y^S#>)ZMU+3 W-4 M8ZW@"-51"2573XFRD\'T*IS9?9K\<5!<1)X5)$K9$XY50&X1 WR\70G*5-C^:[J#4 M[#9KZG?I0A0X@I&E7A8!? U6\/:-VW<^MA!W:^)NFWIPL\H7P#6LT'D6Y54>!8$IH@489!H-_-$2EA>L]AFE'Z-4K_ M2!0.!>/_@-(_%N6\1CEO1;FG1$*LLA)+4$ES#9JL,65:=5Z8,H.:3#9\$<'HBFZ^P*HM/J=X(ICG%K(-L57G@O[E[)=D\0RTKT/T-[ M.VCOU>&L))X6K0/QW%5WM[44!V&A>I/V<)ZBEKN[8NYV3Q'.UD_$2Z%WGP+W MV&]!2SC_7O;MOK7N 2_+SF>WO6P@KS%/"!4H@Z4R M=<[.E7=>]F3E1++"]$$+)E5798:IZF.!ZPWJ^9(QN9UH!W5G'/P!4$L#!!0 M ( *J"=E@*)>4340( /,$ 9 >&PO=V]R:W-H965T"FYT -2&%-=!('."BRI[L@*A;U9 M2E528TVU"G2ED.8^J.1!%(;G04F9($GLSV8JB>7:<"9PID"ORY*J/R/DKPKB#((DKNL(YFL=JIJP5M"@Y*U%H)@4H7 [(L'LQZCM_[_"#X5;O M[<$I64CYY(PT'Y#0$4*.F7$(U"X;'"/G#LC2>&XP29O2!>[O=^A77KO5LJ : MQY+_9+DI!N0+@1R7=,W-O=Q^QT;/FJP%Q!%[P1$34#D>=>)/,L)-32)E=R"JS'::1Q%!Q&MA [TNJ<0A5$/'N<3.#XZ.8#;:VO7\[B]]W'_ MJS2_A@MME.V_WV]5H\[1?SN'F\D+7=$,!\0.G4:U09)\_- ]#[\=4-!O%?0/ MH2;_?3!7B.6J%9^W#1D[^4TNP,EZ!]YY*_4$L#!!0 ( *J"=E@VADZ)O0( #8) 9 >&PO M=V]R:W-H965T^01@$#/ M29SROA8)D9WI.@\B2# _I1FD\LN4L@0+.60SG6<,<)B#DE@W#:.M)YBDFM/+ MYWSF].A&%?,Y0@B"$0B@'+9@$N MQ+$BDC*>2DZM6E(!U_LK]LO)8,/F52)QPQM[5R+OTW,'H#@U<]^9^ M=.>-KI!_\\-SO8OQ,;I@C#+D4L;*C3\<@L DYD?H!-V/A^CPX @=()*BNXC. M.4Y#WM.%5*;X]:!4<5ZH,+>H&$)PBJS&,3(-TZJ!N^^'FYMP7>Y'M2EFM2EF MSF=MX?,9D9Y]D$V(!N$?>0PR<05'#X,)%TRFWN\ZCP5ILYY4E>,9SW ?4W6 M&P>V ,WY^J71-K[5.=X3V89_J_)O[6)WO'0A[5+V4N>R@+9RJ/J/6#A6I]N5 MI[98EU\399MFIXK:T-6L=#5WZAH$ 9VK<_#Q"Y[$4">O8&BO+6Q:UFMUS;?J M#-NL%]>JQ+5VBMN2-.CA&I()L-J,V&PO=V]R:W-H965T MT#V@PD#>T(59&B?4GLY+ROSWDL7[HKQE_$'$"B=4HST3/F4N87 MIBGB.:18G+$<,O5GRGB*I>KRF2ER#C@I1"DU'P1CD4S[BJF?6+@E)(1.$98C# MM&?T[8O(U_%%P \"*['51KJ2"6,ONC-(>H:E$P(*L=0.6+V6$ *EVDBE\;OR M-.HAM7"[O7&_+FI7M4RP@)#1GR21\Y[QU4 )3/&"R@>V^@Y5/1WM%S,JBB=: M5;&6@>*%D"RMQ"J#E&3E&Z\K#EL"VWM'X%0"YU"!6PG<0P5>)? *,F4I!8<( M2QQT.5LAKJ.5FVX4, NU*I]D>MK'DJN_1.ED,![<# ?7@[ _?$3],+Q_&CX. MAC=H='\[" =7XU/4CV.VR*1 #Q #6>()!82S!%VM='".(SY!K MGR+'7BXW&F01X?+[5VYJ6#7Q)V:N%/XN>_X?1#HM;$\8VS:*6S'80NS5B=Y_[*V)>(VZ" M5YIT"A.]/2X#Q_>ZYG*;R=L8]]S:C8G>QOC6:\Q.!5Y=@;>W@CN\)NDB1<]W MD$Z -\[]7H>/SGV;9E%+9COD.C6YSO];7ITV$;=I%K5DMH/8KQ'[^Y<759<% MG,6 U+4#P09L7(*E!=@FFOZ;=6);_ZRE\("8:'],69*Y=23J^\L=YC.2"41A MJE36V;F2\_).4'8DRXM3&ULO59M;]HP$/XK5E9-K=22$-ZV#B)!6#ND0E%IMP_5/ICD(%X=F]GF MI?]^MA,RH("V">U+XG/N'M_SG.-S<\G%BTP %%JEE,F6DR@UNW9=&2608EGB M,V#ZRX2+%"MMBJDK9P)P;(-2ZOJ>5W=33)@3-.W<4 1-/E>4,!@*).=IBL5K M!RA?MIRRLYYX(--$F0DW:,[P%$:@GF9#H2VW0(E)"DP2SI" 2#F>(U^ M8[EK+F,L(>3T&XE5TG(^."B&"9Y3]<"77R#G4S-X$:?2/M$R]_4<%,VEXFD> MK#-(">)7KL!%0KA\(\/, ?S>@>B"@D@=4+-$L,TNKBQ4.FH(OD3#><, MK#8V6K,AS%1QI(3^2G2<"D:]VT'OIA>V!X^H'8;W3X/'WN 6#>_O>F'O\^@2 M:;&T% R%;A_))U*48**Q:L0P_NN)1( M\X\ATJPY);'58Q_G#.BC!3*'UB*X\DJUIKO8Y')TM7_D4BNXU(YRZ>,52>NY#.@:QMW!'$?ZV<"<"VR);+\C6_]MNKI]2E!.!;8G2*$1I'-T!1T6A9JOC M^(<^['5[5!(QW;SY!"F\0E&"V130^1@83(BZV*=2X\W^]TK5G>W_UF?K'\E( MN1MM) 4QM=U5HHC/FV68VYTJW/#A-].0%A'/3W">=J;9@%BNM.\ M02P,$% M @ JH)V6$9$Q4-5!0 "B$ !D !X;"]W;W)K&ULM5I;;^(X%/XK5G:TFI%FF\2!4+J 1.-.%VEZ46EW'T;[8!(#T20Q:YO2 M[J]?Y]*$7'"A\KZ4))SSY9S//H?/=D<[RG[R-2$"O,11PL?&6HC-A6ER?TUB MS,_HAB3RFR5E,1;REJU,OF$$!YE3')G0LEPSQF%B3$;9LWLV&=&MB,*$W#/ MMW&,V>LEB>AN;-C&VX.'<+46Z0-S,MK@%9D3\;2Y9_+.+%&","8)#VD"&%F. MC:E]@> @=<@L_@S)CN]=@S25!:4_TYM9,#:L-"(2$5^D$%A^/!./1%&*)./X MIP URG>FCOO7;^C?LN1E,@O,B4>CO\) K,?&N0$"LL3;2#S0W1^D2*B?XODT MXME?L"ML+0/X6RYH7#C+".(PR3_Q2T'$GH/M'G" A0-L.O0..#B%@W.L0Z]P MZ&7,Y*ED/" L\&3$Z ZPU%JBI1<9F9FW3#],TG&?"R:_#:6?F,QGU[>S;S-O M>OL(IIYW]W3[.+N]!O=WWV?>[&K^%3R09Y)LB?STZ2H)L\'ZC(C 8<2_@-_ MTQR!SY^^@$\@3,#CFFXY3@(^,H4,+GV%Z1>!7.:!P .!V!#]N*[)QRH%R,CSG -[; M.+"]'[';B+KF%K/@U<"(>-&=6V.K<"?6A('O(5Z$D?RIEC\X/VY(O""L!,^895)P \S3 M]1)AK&IOG?S"5OTYK:Y_C!%ZQZB>9"63;:5ZG$Q]GV[3Q*Y>Y-J8R]*3ZQ%P M8D%JE[H+4JG'3R93)QK2A58GLU+QMEIY>W+!F_(FU_QB M7:SVY32-BFGZVDEGOU4U[65)AU%'_;6->@?KKU+:MEIJ/\E)(3O(7$B=]$Z5 MZ133GE8TI NM3F(ESNV!=K%IZY3:GE8TI NM3F M*AG2AU>FLA#M4:MG#)5?XU6K)L>Q&Q75:#9U&P:EC^&B.E9Z&:CV= MBTI5O:D!3IX@.M&0+K0Z>95.A^K][ _5FU9=KA4-Z4*KTUGIUK1D"ZT.GV5,H>N MYJ4;U*K0M:(A76AU,BN%#M7[YU=DNN5RS^6ND&%7.IFEVN" M \)2 _G]DE+Q=I.^H/SWA\E_4$L#!!0 ( *J"=EC6TLD;,@( +<$ 9 M >&PO=V]R:W-H965T)4% M@$)O):MDB NEZKGCR+2 DL@1KZ'2)SD7)5':%7M'U@)(9D$E#&>+RC7 6)@ MS!!I&;][3CR4-,!3^\A^9WO7O>R(A)BS'S1318@_8Y1!3AJFGGC[%?I^IH8O MY4S:)VJ[W*F/4=I(QK!64M.K>Y*W_#B< [Q+ ZP&>U=T5LBI71)$H$+Q% MPF1K-F/85BU:BZ.5^2E;)?0IU3@5;9/[=7*7Q(OU,UK$\>/+^CE9WZ/-X[2?LJRZZ*=Z'*V$,/O%*%1+=5!MG_ M!(Z6/.CVCKJ7WE7&%:0CY(]OD.=Z_B#R"K$_?!#?$ON7B(=^?RYV4@D]-K_. M-=RQ3,ZSF%6:RYJD$&*]*Q+$ 7#T_MUXYGZYHG$R:)Q<8X_63;D#@7B.4D:D M!&E-.RPZG!T[.">[(YY98K.PAV@6.(=3+<[),&FZO5T9B2QE-U=#=-C*13>, M_]*[E7X@8D\KB1CD&NJ./DTQ$MV:=([BM1W-'5=:NS4+?;. , GZ/.=<'1U3 M8+BKHK]02P,$% @ JH)V6(7G4L%* P .Q !D !X;"]W;W)K&ULQ5A;;]HP&/TK5B9-FU0U<;CT,D"B]#*DE:+>]E#M MP20?8-6)4]LI5-J/GVUH0B4P'2WBI=A)ON-S/I]P"W&AD9P0VHNZPO],PO4&*:0"HI M3Y& 8=-KX^,3?&0*[!/W%"9R88R,E 'GCV;2C9M>8!@!@T@9"*(_GJ$#C!DD MS>-I#NH5:YK"Q?$K^KD5K\4,B(0.9[]IK,9-[]!#,0Q)SM0UG_R$N:":P8LX MD_8OFLR?#3P4Y5+Q9%ZL&20TG7V2Z;P1"P6XNJ(@G!>$EO=L(GF.9D0B:GNZ" M!/$,7NOK%UP/?C@D5 H)%8M>62'AS2Y N0OI;!?(PB[$B[OPT!Y();3UERJJ M;$%1M5!4=6^*5#2QA',)PYPAIM].:<5("4HNX^M&K* 7($(ZN-4*;K4/&X9, MUQK&N$.?(.W$;:X3%OLC+[-C..&Q+7USBFS$[NC[A[&-&(+7EE*R(FQ M:0_+#,6U71AC&Z&*RU3%SHC;S!ANR'?XHHQ([$ZTDYRRF*8C:9M^#;/V=I-, M\&SH<<*7/FG8XUJ=[$.8!?7_(N7J=F -G\?^" MUC]02P,$% @ JH)V6!&&Y01C @ 8P4 !D !X;"]W;W)K&ULM91M;]HP$,>_RBFKIE:JFA"@F[H0B8<^1"H4E79[4>V% M20YB-;8SVP'V[6<[(6-2X=W>)#[[[G^_^K M-$=&U)4HD9N3E9",:&/*M:]*B21S0:SPPR"X]AFAW(LCMS>7<20J75".SEY@.!X_ODMD]S)\>DW%RN[B$1S0U*SB? MH":T4!=P!I3#2RXJ17BF(E\;"JOEITW&49TQ/)*Q$\)4<)TKN.499O\*^ :_ MK2'=/G>O@VPF^7LO7<^K=(WS-IWD;+I66 MYO?^$+#W'P#[+6#_Y 4^HQT+E*]A13GA*4)1(U.NT:33@#LS711^!%Y+]YVT M'2V;N!,$D;\YY/$/?GR&&ULK51=3]LP%/TK5QF:F 0D30N;6!JI38%%@E)1V!ZF/;C);6/AV)GMMNS? MSW;24%!;[6$O\=<]Q^?<^-YH+>2S*A UO)2,J[Y7:%U=^K[*"BR).A,551)([4,G\, @N_))0[L61VYO(.!)+S2C'B02U+$LB_PR1B77? MZWB;C0>Z*+3=\..H(@N8 4APTQ;!F*&%2;(F"4R,GXWG%Y[I05NSS?LU\Z[\3(C M"A/!?M!<%WWOBPQ_H:-GW/+EPFFW!?636S@0;946I0-V"@H*:]' M\M+D80O0N=@#"!M ^![0VP/H-H"N,UHK<[9&1),XDF(-TD8;-CMQN7%HXX9R M^Q>G6II3:G ZGJ8WX_0Z30;C1Q@DR?W3^#$=W\#D_C9-TJOI":1E1:@T_TV# MF,.MX(M39A*?PT IU J.1Z@)9>H3G,+3= 3'1Y_@""B'QT(L%>&YBGQMA-KK M_*P1-:Q%A7M$=4*X$UP7"JYXCOE; M\X;&V&&YO#\"#C"+,SZ'9.( S"[@Y! MR;_#PP-RNFW6NXZONX?O;5+9:U))G=2?@YG2TCSQ7[N25W/W=G/;LK]4%N;RC(Q)+K^A&UNVUK&KB*?+<_-"VK[C"O-'6_NR-R M0;D"AG-#&9Q]-GIDW4/JA1:5*\.9T*:HW;0P;1>E#3#G&ULM5AM;^(X$/Y^O\+*K4Y;B39O)$ /D%KH[B%=653:NP_5?C#) M %&3F+,=:*7[\3=VTO#2D&Y77#_0V)EG/,^,QYY)=\/XDU@"2/*F*8(E)%1$(E#OG"%"L.--2@)#8=R_+-A$:IT>_JN0GO=UDF MXRB%"281NO$W?18BG5A-GOKN@"IB ?5A..([/4$D8)I")B M*>$P[QE7]N70]A5 2_P5P4;L/!-%9<;8DQJ,PIYA*8L@AD J%13_K6$ <:PT MH1W_%$J-T;;("',:1;+.[;Y PI"GM(7 ML%CH7[(I9"V#!)F0+"G :$$2I?E_^EPX8@=@NT< 3@%P#@'^$8!; -Q#0/,( MH%D FMHS.17MAR&5M-_E;$.XDD9MZD$[4Z.1?I2JN$\EQ[<1XF1_.OHZ'GT9 M#:[&]^1J,/CV,+X?C;^2R;<_1X/1S;1!;BA/HW0AR 0XF2XI!_)Y"))&L3@C MY^1A.B2?/YV13R1*R?V298*FH>B:$FU3*YA!8<<@M\,Y8H?MD%N6RJ4@-VD( MX;X"$TF5S)Q79@.G5N,0@@OBV@WB6(Y;8=#PQ^%.C3ENZ6A7ZW./Z!MG"7 J M&2>/5S,A.6[X[U5NRK4TJ[6H4^!2K&@ /0/37 !?@]'_[5?;MWZOHG@B97N$ MFR7A9IWV_A@/K2@-6 (5EEW78Q_M2M_D($^#U(&V[KLMO]TUU[N"47KS9X0T@9)M\/A,\[9?A.I&R/LE]2]FM#<$U%%)"-/CXJ%_OB!=:5>PZG99_X(4JN4[3\X]L_G;IA7:M M5=.<)3P'<89',YESEA"Y!!(6[KF93$E XR"+J;[+ZWTP:+\QT_>LEG= YJU4 MQVHUV]54.B653BV5.\#4C0)E]%2RX(D\WD(R _Z=_$NN&>4A87,RC#@6)8R+ M\FT5B]J%/IKH)U*VYQ/;VI8 UHE.MT+1B5B?2ML^[9W*QWX_N['H)#"?8\!5 MZ-4B40#GJI(,L:PM=XO0NX5N<(L(LN T59/OY/H[RQ])]@*UN_%=QSX\\"JD MVBW7J\X.V]FZQ/GI_+A)5C%[ :A/B_H%/KQ#3J1MWQW;DLVNK]D^D!@G+=M. MI6V?]K9PL^NKK_\],7ZJ^"M0NUO>:=F6=9@9%6).L^D<20U5 >[/; LD^]V: M!5M/?1.^ ,7K E3G0K!QT.E1]AX$2P/=1324+/9/&_7C>PV\]/2[CM7 FZWP M6.,74O[A< 6Z,8Y?&A^X@&<0T$R EHD2W"DZACB*.*$"6WS$K#&&JF#9L"P. M$8&6R.@\+$)_4;61S)TV$YN9A6[7!19#62KSOJ"<+3\)7.M&^&!^H#X55,Q? MV=[E(&_1W[SQ\8W^NF!NE\Z_3=Q2OHA206*8HQG610O+9IZW^_E LI5N@&=, M8CNM'Y= 0^!* -_/&9.O [5 ^=&E_Q]02P,$% @ JH)V6%?ERB!C P MT@T !D !X;"]W;W)K&ULM9=;;],P%,>_BA40 M8A(LEUXWVDI=QJ 2NXAN\(!X<)/3QB*Q@^U>QJ?'=K*LG5)O1.6EB1V?_SF_ MDY[X>+!F_)=( "3:9"D50R>1,C]U71$ED&%QS'*@ZLF<\0Q+->0+5^0<<&R, MLM0-/*_K9IA09S0PY3=C@A2B*26P.JR@A#25"NI.'Z7HD[E4QMNWS^H7QAX!3/# D*6?B>Q3(9. MWT$QS/$RE5_9^C.40!VM%[%4F%^T+M=Z#HJ60K*L-%819(065[PI$[%EX'?W M& 2E0?#4H+W'H%4:F,RY160&ZQQ+/!IPMD9A M#N] 8CNP[0JV;=1;>V#W_7-^C&="IPQ+LD? M;+Y6;*Y*HTH$+DL(-E&ZC E=H 5C\9JDZ5%=2@H_'>-'?Y97(]\;N*MM4.N2 MG?"[5?C=EX1[&ZJXAC.\][J9>,YQ^[6[H/5_9 M=H=-@;;: ]\*=,MQK!I'U52Z(Z*A'7_L@O^ZQ?\4&J[^,$C?O ?]K!2 M]% I.)#:;@H>6Q;?WK-\-YTPQ BO@*O.'N'M_W@.G+"X-@EV6;^#[@'SNBXQ MM)O^*[&[U1UGP!?FT"!0Q)94%IUD-5L=3,:F'7\R?Z8/+*;K?I0I3CN7F"\( M%2B%N9+TCGNJI'EQ@"@&DN6F!Y\QJ3IZ&PO=V]R:W-H965TLFEJI:T*@W=1!) BEBU0H*FWW,.W!)!=B MU;&9;:#[][.=D-$*T![VDOB<^SY_WSEWW8V0+ZI U/!:,JYZ7J'U\MKW55I@ M2=2%6"(W7W(A2Z)-*!>^6DHDF0.5S ^#X,HO">5>U'5[4QEUQ4HSRG$J0:W* MDLC? V1BT_-:WG;C@2X*;3?\J+LD"YRA?EI.I8G\AB6C)7)%!0>)><_KMZ[C MCLUW"<\4-VIG#=;)7(@7&R19SPNL(&28:LM S&N-,3)FB8R,7S6GUQQI@;OK M+?O(>3=>YD1A+-AWFNFBYWWQ(,.ZSKL %I7!P!A#0C? SH' .T:T'9&*V7.UI!H$G6EV("TV8;- M+EQM'-JXH=S>XDQ+\Y4:G(YFR>TD&25Q?_((_3B^?YH\)I-;F-[?)7%R,SN' M$:$2G@E;(8@<1I03GE+"(.%*RY6Y3ZW@=(B:4*;.X!,\S89P>G(&)T YC"EC MYK)4U]=&JSW13VM=@TI7>$!7*X2QX+I0<,,SS-X2^,9DXS3<.AV$1QF'F%Y MNW4.81"V]PB*_QT>'I'3;@K?=GSM WRNKNMM7?.FKG2GKC_ZRZ$W@;V@&:Z1W\ 4$L#!!0 ( *J"=ECN(^K9 MP0( '(( 9 >&PO=V]R:W-H965T1 $CTFJ54]*U$ROS2MD640(;%!HE\;[4K+' L(6?J-Q#+I M6Q\M%,,"KU+YP#:W4.KQ-5[$4F&N:%/&.A:*5D*RK$Q6##)"BSM^+7VH);0Z M>Q+<,L%]F]#>D^"5"9X16C SLD98XJ#'V09Q':W0],!X8[*5&D+U+LXD5T^) MRI/!;'PS&5^/P\'D$0W"\/YI\CB>W*#I_9=Q.+Z:G:-90O*@V$PK]/=P_0\2K' M/8/G[7.\;FBR-30RACX/YD)R5=K?FXPK<-O-N/ISOQ0YCJ!OJ>]9 %^#%;Q_ MU^HXGYM$'PELQX)V94'[$'IPGP/'4LN&5W4<"6BLDP+#-QCZ,%H';:?KJQU< MUW4T1/DMYU,5M4/0KPCZ!PDV%_WS'61SX(U[W.3:6#AVL-T?^^]G.VE64(OVL)?8=[[ON_L< MWT5K(9]5 :#1IF1<]7&A=77E>2HKH"2J(RK@YF0N9$FT,>7"4Y4$DCM0R;R@ MVSWW2D(YCB/GF\@X$DO-*(>)1&I9ED3^'@(3ZS[V\=;Q0!>%M@XOCBJR@"GH MIVHBC>6U+#DM@2LJ.)(P[^.!?Y7T;+P+^$YAK7;VR"J9"?%LC33OXZXM"!AD MVC(0LZP@ <8LD2GCI>'$;4H+W-UOV6^<=J-E1A0D@OV@N2[Z^#-&.O8BTN,LJ72HFS IH*2\GHEF^8>=@#^^0% T ""MX#> M 4#8 $(GM*[,R1H13>)(BC62-MJPV8V[&X4+=#P"32A3)^@3>IJ.T/'1 M"3I"E*,[RICY*2KRM*G),GM9DW]8YP\.Y/<#=">X+A2ZYCGDKPD\(Z95%&P5 M#8-W&4>0=5#HGZ*@&X1["DK^'1Z\4T[87G#H^,(#?+OW]W,P4UJ:E_MKWT75 M/+W]/+:;KU1%,NACTZX*Y IP_/&#?][]LD_D?R)[);G72NZ]Q_Y*,FS,O%&P M3V]-=.P/7 M;F_\0S./ZO'QEZ8>9G=$+BA7B,'<4'8[%V<8R7I U(86E>NQF="F8]VV,#,5 MI TPYW,A]-:P"=HI'?\!4$L#!!0 ( *J"=E@#)(?NV 4 #PC 9 M>&PO=V]R:W-H965TMJ3NA';D(0^ MBM323IO4;M7H]CY,[X-+7(B6Q,PVI?WWSPDTQL%Q7R;SI25P?7+N]7'NB9/Q MAO&?8DFI!$]Y5HBSWE+*U6F_+^9+FA/QGJUHH7YY8#PG4AWR15^L."5)-2C/ M^B@(PGY.TJ(W&5??W?+)F*UEEA;TE@.QSG/"GR]HQC9G/=A[^>)KNEC*\HO^ M9+PB"SJC\MOJEJNC?HV2I#DM1,H*P.G#6>\, M_2P//B5GO:!D1#,ZER4$4?\>Z91F68FD>/S:@?;J8L$]5?L-G%!CTP7PO)\MU@Q2!/ MB^U_\K0KQ-X &+8,0+L!J#E@T#( [P;@*M$MLRJM2R+)9,S9!O R6J&5'ZK: M5*-5-FE13N-,W7SY??;Z;G8!/Q2,M M).//)^"6*]EP^0Q(D8"K7^MTI292@K>75)(T$W^!=^#;[!*\??,7> /2 MPM MV5JH6#'N2\6Q/%-_ON-SL>6#6OA !&Y8(9<"7!4)34R ODJNSA"]9'B!G(B7 M=/X>8'@"4("PA=#T_P]'#CJX+CBN\' +7EU6H$2\+ OZX_Q>2*[T_*^M7%NT M@1VM7.2G8D7F]*RG5K&@_)'V)G_^ C!XG&.-A,.X_[F=DB1HB/*BC#*K#FNK0 M2?4KV:@U)BE/228JT9?7HE+9*\[F5%AUO84,]YC *!HTZ!X&C=#03C:LR89. MLEI0BI_2D;K"2AN_\.#4* Y'#7Z6H"",[02CFF#D)'C'),D4N1U-&[?HX+0X M&HUP@YPE*D8HLK.+:W:Q$(S\]5='D9'T*?3.G2N@"+CI>6Q!$6[1IN[ZT-WV9RMU@^^6IA.@\\1X0C-O +5O0(%_ M:2*G%^E: 5]H9@6T#4%>;0@Z]!?-YNX,,5EJ^X'<]N-BG69)6BR%NA\![+#,^^AHZ9#MD:%88M"M05! M;@MR76W8N-3I'-]Y;CRAF=EJ"X/"(ZC3JZGQA6960)L:Y-Z[Z*[.PTT*.!@V M;S=?BS+9:@."W ;DFA)!ERQ+P*=\Q=DC+LG8ZV+U#TEFO^'#C \;1L*%7>U1+O\?:E6"W*]%35-*](?.E"N#/ M3L&Z(3MOB'M",PN@#0]&_@6+O1H@7VAF!?:>AK@W<[H+%A](,1X<[&-;HJ(1 M;KG 8FU6\"O/,-:\2.6:TXKNA_2I_.R^P+H1.\_6,79@L+8_>'@$O7JU1+[0 MS IH2X3=NSK=]7KX2"4:#%%3K[:HJ$VOVKY@MWWY3I?I/'M-H5[W8'RAF1EK M"X2/\#@'>S5!OM#,"F@3A#T_TMGA[3]#A?7/;WWD/(*5]4KV<( M,&?K0FX?V-??UJ^ G%&+M! @HP\*,G@?*49\ M^ZK&]D"R5?6VPSV3DN75QR4E">5E@/K]@3'YH'YA9O(?4$L#!!0 ( M *J"=EA:_XYS]@( %<( 9 >&PO=V]R:W-H965TIUB;,)['99+2E*8<"3R),'\XP$H6WMD> E3D&_9A*N>7;M$)(%4$)8B#HNNU7?O!VT=7P3\)+ 6 M.VVD,YDS]JX[/Z*NY6@@H!!*[8#58P4#H%0;*8R_E:=53ZF%N^VM^_C84H%I>SNL(!Y*".\$Q!#" M6^2[U\AS/-\@'WQ>[NW+;56.NB9>71.O\/-/^/7#D.<0H=%&G16A]5XG=_+B17^_"/*>-RBH9Y"GTV[T6&0^A:ZO )X"NP>E^_N('SS93_?S+; MJX9?5\,_YUY7 Y*,L@\ =78IEFH@9$(:%[OT:Q9^^BNRZMW=J759[69DB&FU MZI@]T$8-VC@+^I8"YJD"6Y*%1"'FD4)=09J#";+T"G8 /+WW]B -,$QF*VCAT!D[WSV]97[C/F2I )16"B9 M<]M2>EY>8V5'LJRX">9,JGNE:,;JY@>N ]3[!6-RV]&72_U?HO&PO=V]R:W-H965T>Z^N3F0-MI1]CU>$+YBH0XOJ1K$HD[2\I"S,57]M2*UXS@13(H#%K0<3JM$/M18SA(KMVSX8!N M>.!'Y)Z!>!.&F/WX2 *ZO6ZXC?V%+_[3BLL+K>%@C9_(E/"']3T3WUH9RL(/ M213[- *,+*\;(_=JXGER0&+QS2?;^. SD%1FE'Z77VX7UPU'>D0",N<2 HL_ MSV1,@D B"3_^3D$;V3/EP,//>_1/"7E!9H9C,J;!G_Z"KZX;O098D"7>!/P+ MW?Y&4D)MB3>G09S\!MO4UFF ^2;F-$P'"P]"/]K]Q2]I( X&N*AB $P'P,( MKULQ *4#4-T!7CH@"75K1R6)PP1S/!PPN@5,6@LT^2$)9C):T/>;T?1FV@2?B0@>&,4QX;'XYN.9'_C<)S' T2*].Z8Q!^\GA&,_B#^ M"_ PG8#W[SZ =\"/P-<5W<3".!ZTN'!,PK?FJ1/CG1.PP@D7@CL:\54,;J(% M6>0!6H)11@ON:8VA$7%"YI< N4T '8@T#DWJ#X<&=U 6993@H0J\75S!XV@6 M(WGY+HA)GA,V#-I#'_YV>TXO^KX60++L?4RMIX) M??C'FC#,_>@)!$G=X(2]CO(.IYW@R [U/.SU^^U!Z_F02MFHW_5@9I1SL9VY MV*[I8E+:39 TO NZO'C83X,FF'+,B>AQ'- E^.1'.)K[. #W-/:3GO5X\\)E M!YP%1!3N)DP@::1-;EUWCD1L\G:<7+PZ6;PZ1N"4?8V4=DK9DA,PE]"R"7+U MZ>QF[G5KN$?^KV36<:9.,M^.DXM6+XM6SPC\E7+!O#J%O?*$<]Q>(8D:HVX7 MZ=/8SQSK&]OD>,.8S)"Y3_9M]DE+8#FZKJ,67\>8B3WA-65)$8K2I(4I'*BE M6+NP.IK)U(6%9&FL8*]7,>G< ^W@GM9%][KA1Q.DU.Q.O"/^O#F7,0U2:(:'21QD0;B':IR#NP M790F&JNNU^E73 :EGERS?#(U2I5*RS.BKDLGQW)R%NA\:)7R<^M)OU=41+?< M]HKE8#+).ZS$EVM67]6-\6R54,^A5]2!?>!\4)5P=(U"+96T]1;$?EFY>K!3 MS'S9RG50IZ///E2*#SK&QGVPDV)NW-"H'$]MW+;0\JR54(1UA>+!OS+ #]?8 M9TF1DY>UJ&:B#<0.NF,0,.:GOY:=DF@0&G.ZK_,C"37JO),3:@DM3UFI.V@6 M/(?S;2Z*64L8E1+G]5 I=QJK=L^IF&=*($'S'M0=?O'#30@>[T@X(TR?$:O: MR!9:GK#21K!MHPB- NMDRI;0\I25JH)FG7$;<2)PQ1(9U6O]*5XGU]1+!6E\ MZ&M)*3T#S7IF-'T T'$[%P[,BA?\"VK5LQ'YY.1:0LO'05G6*L750V.">A4.*C&#S&+F&V9B80N(V;V/1U >77V] M>26/^V[Q'9S&J-NO"KS2+,B&9D%6-8LMM#QEI5F06;.,0KE%^ _6;Q-6OY-! M9>G2+>;(9))W5ZD19%8CMVKE25NVN6-;52"VT/+,8U^>HL/!3^#@1S#'G ".7^26J1_%&R8KH"FPPE">F1,C@#S; MQTFTNR'/:E&^(@)TA=F3>! C@1A M+H$!0F&_8=DFM+QD>-EYJ4\OT7^8#LF.;P/U!+ P04 " "J@G98 M$RX]R4(# "E# &0 'AL+W=OP[,Z7R$]>5HQFD5![Q'#)]9\)%2I4> MBJDKN566,4LADXQG2,"D[YSBDS-2!!1/?&.PE&OG MR+0RY/S)#*['?<?*=C=6L[W0=-(8)G2?JGB^_P*JAP.0;\406OVA9/AOZ#AK-I>+I*EA7 MD+*L/-+GU42L!1#2$D!6 :2HNP0555Y01>.>X$LDS-,ZFSDI6BVB=7$L,V]E MH(2^RW27@T-T2]5<,/6"^ 3=@&X3W3 Z9 E3#"3:OP!%62(/T!YB M&7J8\;FDV5CV7*5K,)G(>,1'CX,+M+]W\&<:5[=0 M]4&J/DB1UV_)NU[_UQP$52R;6CKY<3J42NC_PD];[26C8V>8!7(BD(ZMIC(J**+,&EO$?MB->N["PNI4K,XV M5F!CE5'A&HM$06!G!14KV,8*;:R@R<*>;V>%%2OK)Z8NV ML+*N]>/FO&)LIL4&QU[M)&\C_@:D/$'7F6X8I+)*QFN0/^'((RWD-1OBC>0[ MLZXSA18TF8-Q23D'26T0:S6X4#>MX:;7VEBUU?!N6L--K[6Q:JOAW;2&FUYK M8]56P[MI#3>]UL:JM8;?XC7<%%L;L?8:_C]BPTVSM;!);37R5JN1IM7:J+71 MR'L8;94TV%")N[;I-!OX6RJF+),Z_T3'>$>1#A;EGK@<*)X7^] A5WI76YS. M]'<$"/. OC_A7+T.S-:V^C*)?P-02P,$% @ JH)V6'+92G3' @ ;0< M !D !X;"]W;W)K&ULK55K3]LP%/TK5H8FD!AY MM V,M9'Z T)1$7']F':!S>Y:2P2.[.=EOW[73MI**6M)K0OB1_W'I]S;%_W M5T(^J0Q D^ MZ!:4<2?JV[&IC/JBTCGC,)5$545!Y9\1Y&(U<'QG/?# %IDV V[4+^D"9J ? MRZG$GMNB)*P KIC@1$(Z<(;^Y3@T\3;@.X.5VF@3HV0NQ)/IW"0#QS.$((=8 M&P2*OR6,(<\-$-+XW6 Z[9(F<;.]1K^VVE'+G"H8B_P'2W0V<"X@Z)*Z5%T20C@X+Q^D^?&Q\V$OQP3T+0) 3;"=T] M"9TFH6.%ULRLK G5-.I+L2+21".::5AO;#:J8=SLXDQ+G&68IZ/;J^'L:G9* M[DN05#.^(+> KBARKS.0Y(;7!\4X?CP!35FN3L@G\CB;D..C$W)$&"??,E$I MRA/5=S52,L!NW"P_JI_#&5&5D2EE"T$@R+$3%M4);X[Q"O<8] M])G>5!+P=FHBTW@)RR^BUQ2ZNRF8.G"I2AK# MP,&+KD NP8D^?O!#[\LN?_X3V"NWNJU;W4/HT MT5U.U/ ]"V\*V#+J?.[U^NYR4^&.H(MSOPUZQ;S7,N^]GWG*..4Q'.!=@X<; ME+PMTF\C]C .6\;A0<;7EM2[&8=O3/2W?=X1TMWB[&Y4K@+DPA9T16)S3>H[ MWXZV;\;0ELJM\1&^)77I?X&I'Z([*A>,*Y22(J1W=HZ$9%WMTQ"[0O;/074$L#!!0 ( *J"=EB:&\_CH@( &8( M 9 >&PO=V]R:W-H965TU7\"/>X[O.5SK M$NT8?Q 9@$2/14[%V,JD+"]L6R09%%@,6 E4[:P8+[!44[ZV1(Z6K'I@?'&H)4:0O577$BN=HG"R?CV:K*X M6IRA6U!>H&_ "X1IBF9$)&Q#)9IC">AD!A*37)Q&ME1G:J2=U/R7%;]WA'\& MR0#Y[AGR',_O@$__'>ZUX;92VLCU&KF>X?./\-V;SPKIA\D6N*I2- ==ZH2N M#QTX^0F8BU/T:[(4DJM*^]TEO#IIV'V2OGT7HL0)C"UUO03P+5CQ^W?NR/G4 M9<,;D;5,\1M3_#[V^&NIO)#:@UQ[(+K$]C/XZ$D[AD)4,"HS@48HQ4]=1--^ MHF%-]'%/Y)YW,+54#AN5PU[J:T(Q3:!'8S_>J5+KTM0/=)V]&&_XDIB@$1/\ M7QVW+VQ_X09O6;AO1-9R8=2X,'IUX58,KF,H=$_;QL[ &9Y']O901AWFML." M)JJ57]CD%[ZRY,+.8T?/DGLIJDK./N@"N@-_P7Q-J%"GKQ3,&83J4_&JJU43 MR4K3&)9,JC9CAIGZ$0"N ]3^BC&YG^A>T_Q:Q'\!4$L#!!0 ( *J"=EB8 MPI" <@, ',- 9 >&PO=V]R:W-H965TT=+*)B*1'4G';3U^24M2X ME35DD%_8HLC__W@_2>?3Z"#DH]HA:OC$,J[&WD[K_;7OJWB'C*B.V",W,ZF0 MC&@SE%M?[262Q(E8YH=!,/09H=R;C-RYE9R,1*XSRG$E0>6,$?EYAIDXC+VN M]WSBGFYWVI[P)Z,]V>(:]8?]2IJ17[DDE"%75'"0F(Z]:?+2#]\G8"^R&,,-86P=B?IYPCEEFC5N M8?/><_"1L<_C5R8^RZ557L>?\^J?\5H:/W!(.\YUY"&!&^.,9W':F'?BX1+9!^4_= M16LTM07G6NU)C&//5!2%\@F]R2\_=8?!KW7 VC2+6C([@MFO8/:=>^_DM=UH M>,^5EKFI;UK!Q^G&#$R%JH78;Q-BFV912V9'$ <5Q$'C'7ECQB!2B"4F5$-* M8II1_?G,UB[*<@8;(8TEY5N(B=F%F:N#VQCDM7#;-(L*LX$SL_^M3Y-!X#XC M_ZF&V[#B-OQ_W-*<)ZJD5EM"9XW&KV4U_"&];XD5 %H*=T3IHJ)TT4C)/IU4 MY]JANDM3&E.2P;Q@]BXGDG"-"*8K@C4C60:$)[ TLSD[5_0+)N9_1*/<2ZI0 M-9;(QGV\%FJ;9E%+9D?\+RO^EVV6R,LV(;9I%K5D=@3QJH)XU7@3KZ2($V[N26:ZUHVNHWCUPR/9/RXX!9_&H*_ETY)9P<=_T:8RE%O7[BN( M1X,V]%*.T",Y\*H9\'-D#UGC7Y"E!+ P04 " "J@G98[E0.KX8# % M#@ &0 'AL+W=OU#?C6W0!-:M3;+HIB'VAI;!.52"U)Q\G?[Y"294M5E 8PX@=+I&;. MG#.:H5LB?:@V@R7V:<-5WUEIG5ZZKHC6D5)V*##@^60J94HU#N7)5)H'& MUBE-W,#SNFY*&7<&/3LWDX.>V.B$<9A)HC9I2N7#"!*Q[3N^LYOXPE9K;2;< M02^C*YB#_IK-)([<$B5F*7#%!"<2EGUGZ%^-_= X6(MO#+;JX)X8*0LA?IK! M==QW/,,($HBT@:!XN8,Q)(E!0A[_%:!.&=,X'M[OT#]:\2AF016,1?(/B_6Z M[UPX)(8EW23ZB]C^!86@CL&+1*+L/]D6MIY#HHW2(BV'ZE]T4B#AS\ M[B,.0>$0U!W.'G$("P>;.3=G9F5-J*:#GA1;(HTUHID;FQOKC6H8-Z]QKB4^ M9>BG!].;V:?/WZ=3,IK>3C]>_TV&MQ,R'WZ[OOUS3F:?AK=S\FX"FK)$O2?)CN,"G6,3_-N4R#W76',IT]I7*: 1]!UM7@;P#9_#VE=_U M_FC*PY' *EDY*[-RUH:.65[B3$PB?/>2+3:V=;.$\A,":9:(!\P3]F*T)G"/ M*Y."IFSD(3HVA%F6[@:A9WX]]^Y0YY-F%06=4D&G5<%T1S-F*C*O4W!<[JJ" M:"HV7#=1[_S"J>E[/.7Z[_S8V;E2&"5K%R46;GXO>JU3<;XJE*X)R0#&6%R\(--Q#(W:LI' M'L3W#ZK4K]5QJTF%^V7)_?*(W"%A*[9(@ "5'(W5WAK7G\7#;KT!U23P\E?V MWJD7UC0^9561Z7O[3[#7*K3SG(9MQWIN;1X+K:K\8//AOUS3%K&.E9DCH54S M$^PS$[Q$XQ91:B7;J=7U4U95#?L=D=^ZM7C1!BZHU'LSJ"M]RBR7ZAYLJ%.0 M*WO.,(3P,Y_O4,O9\BPSM#OXVOS(G''L1GT/DQ^0;JA<,:Y( DN$]$[/<0L@ M\S-'/M BL]OVA=!X"+"W:SRG@30&^'PIA-X-3(#RY#?X'U!+ P04 " "J M@G98?27AY*<# #C#0 &0 'AL+W=O16NAJ^] [5.C=2:=[,,D T28V9QOH_OMS MG#1 XD1=U!>(G9GQ-^.,9SPZ,/Y=; D>LU2*L;61LKMK6V+: ,9$3=L"U2] M63&>$:F&?&V++0<2:Z4LM5W'\>V,)-0*1WINQL,1V\DTH3#C2.RRC/ ?]Y"R MP]C"UMO$<[+>R'S"#D=;LH8YR)?MC*N175F)DPRH2!A%'%9CZP[?3K"?*VB) M/Q,XB)-GE+NR9.Q[/GB,QY:3$T$*DE?22PW8VM@H1A69)?*9W;X!J5#_=Q>Q%*A?]&AD U\"T4[ M(5E6*BN"+*'%/WDM W&B@-L4W%+!K2OT6A2\4L'3CA9DVJTID20<<79 /)=6 MUO(''1NMK;Q):+Z-<\G5VT3IR?#Q]\D?3P]H&)4;@1YH#/&Y 5MY4KGCOKES[W9:G$)T@SS\&;F.ZQF )N]7=SMP MO"JZGK;GM=B;[#@'*M&VBNO5$BBL$GF-_KE;"LG59_RO*7"%W9[9;I[;MV)+ M(AA;*GD%\#U8X:^_8-_YS>3T!QD["T&O"D&ORWKX%6+@)#7Y6"CVM6)^W.S# MP5!%?7^*WI3!?B5R!M2O@/J=0'-)))AP"C7_=*D!KN$T97K8C.-7.'YW?!A7 M1PTU ?E-(*<>GZ;,L"4^0044= (]0ZH"%"/)T,MB9N(*&FM^\7HUKJ:,.S!S M#2JN02?7@DF2JB.QEE$FP$$S<+A7WTJ#T*!E+X<5XK SW:>P H477Y#OPX_, M]P\R=A8#[!PKBG-IQI>:9Y^.Z_NUG3%(.>:-P2=E#E^6]:7>&1)VO#I24ZH- MR3TBN9=F?JEYNER_3M04:2,Z5BO<60G*%(L[OF(CK&WXW::T $05 G-=2K$G4M?FO#'"H;?5<+T1OR\@WXCVG[3P4Z GW70/FF7,^!K M?8M0G&Q'9=%J5K/53>5.]^>U^?O\!J/;\*.9XOKS1/@ZH0*EL%(FG9M ^<>+ M&T4QD&RKF_(EDZK%UX\;=0L#G@NH]RO&Y-L@7Z"ZUX7_ U!+ P04 " "J M@G98"C/VA#0# "R#0 &0 'AL+W=ODEBPKO&7(C%M6GR8 X)YI=T 40^F5*6 M8"&';&;R!0,B(KQ&L M^,84L2,&:0;9X/UW<.;*X[: A)6+. MT2T)(2P"F)))3L?9T.D[E8@W$%PBUSY'CN6X)04-_CW=J2C'S=5U-9Y[3-U4 MP=.8%EO5';\(%DV;^629?BMXH1U=O^#5?X "ZAGR%.; 5&/[[ M=[9G?2BC7A-808A&+D2C"MT?WX][G\L8IFE-G:;^47-RHJ>2"0@1".!A=J&(2038*6;4(GSVDVH":Q V

  • V_J1J]. M(6H"*PC1RH5H5>[]7X4H8Y]">CLF=%O>OE,/@UJN6V[4=EYLN[+8T4)^C"L- M6IG_VGVI":Q ]2JG>O6F!KVJ4XB:P I"V-;VLVS5;]$,<]=^SKY#2V(NVDU*D9?%UBU(16%&/;Y-B5K<-_ M>M4]^*BWF@=F+0O:__";.]UO FRF#P4@N3GF:&F,TBPE$,4PEI7;9D12P](*0#01>ZQYY0(3MV?3N7ARI@*D ^GU(J M-@.U0'Y,\_\ 4$L#!!0 ( *J"=E@&PO=V]R M:W-H965TW?2Z5Z88,"J8[.V@?;;WSA)0TJ<;%?:-VT2YC_YS3@S8P^/4CWJ+:4& M/:51QYV'MY\)5MML8^\,?#'=G0.37?=@\* M[OS2RXJE5&@F!5)T/?+N\.T$]ZP@L_B+T:.N7",;RE+*1WLS6XV\P!)13A-C M71#X=Z 3RKGU!!S?"Z=>^4XKK%Z_>/^0!0_!+(FF$\G_9BNS'7E]#ZWHFNRY M^2J/?](BH*[UETBNL[_H6-@&'DKVVLBT$ -!RD3^GSP5B:@(<*=!$!:"\*V" MJ!!$6: Y61;6E!@R'BIY1,I:@S=[D>4F4T,T3-AEG!L%OS+0F?'L\^3+IWNT MN/OG?GZ%9B*1*44+\H3NUVO(M$9RC18TW4D%BXRF#)XJ*A*JT2S=V340&S2E M\%#1555^IS4%-1$K])&1)>/,,!!=3*DAC.M+=(V^S:?HXMTE>H>80(NMW&NP MUD/?0%@6SD^*$-[G(80-(4QI%KN0_)+#,:EAD-,W]1 MH[\B&RS/AH%LD#P;_]XMM5&0M?]<4>9N.VZWMIQO-62\QAW,&0]D,5WF'3PZ7- M*Z9.R=1I99H;F3Q>VX)?(5@6Z(*:V#[B0LP]Q977=[MGA'630>0&[): W5; MNR21>P$?B:()90>RY-3%UJV]N'^&5K? '3=:7*+%[;DCG%HNLU?"69]Q[96= MP1F5PZ3GINJ55+U6*NCBT*,%-$EE.](S@LH2FF>KBC8PP'PNM;:]YY]B76;>+^P,W=+[G[K=R?83;#%%8DZYV6D3J3VJ^O8_\BH0^V1IQHPWJ:+W@#*UN$S=4" Y.LRIH9?M(20-1(7R%%)Q7ALNH M&S9 508H;H5:2$.XW3DT='TG+G84Z2 ^YW58]09! _!I/N'6Y@]9U/H6'0C? MY[5"..SE",QT)VE88[C&W50ZK.&JH>GP:0+CST_L"7MD:M6\.<.MX^]G=P:_R]CH5IU&'VV?=@[(- MT#QGVT/Z?<]V<# PL,[PMH0USF5<'VW5?4$16MVH>?%.$Q"WC\#F#[&RA$YF MU^"K,=>-FIE/\Q&W#T@[:$KBLF;0Q0OQ\Z43N%?;?/7KP'6C\[;D5\XD]D#X MB:@-$QIQN@9-<-,#L46SJ5460/X?2VE>;FQ)Y_R MI#O^'U!+ P04 " "J@G98U):7&VX# #C"@ &0 'AL+W=O_ 1D%->?-/7G:!. #$PQ. 9 =(C@']$X!T!TB=T4:9LW5+ M-,DF4FR1M*L-FWUPL7%HXX9R^QD76IJWU.!T=O_7[-/#'?I\_>UN<8$>(1<\ MIXP2%V-1HKNR!!=I])F\H$>B 952U&BAB5YK(7\T<[U;T(0R]7X2::/*1O?'<;SWWN]BSU_20-CW^0!^A $D8>@H7(:(\%S4@35Y\06B8 MXR9C;1G:9#A,XDFT.71W;M4;V8-6]N"L;$"$%XB)W*@U"D'Y-#8T,7ZS.QZD M1R*[=^OA<(A_?]\1[F&K>]C)- =3T3APC6S!C(QL5%!S)?%<>H/\ZB5.^J4.ZL(7X)) [0A;-W4&L+,C4*,7)_:;KK>,!S_+XZ-_C/ M!(=I]Q<8MY;&G53W7)MH*XV,E2?C0IIRR%W-G M%K4.?KVY.DQ^G?(U]V8\3 M_V>Y;#UXHEHH_G2H]DO.,:OMQ?NW.Z3KD!>( [: M>_%T@WMQ.#JA]1P2AX/NO(D/+N"XD^OUAK6ETFLC]I["T7%)/+$NN3R*?',W?V [.M2&O-$W[]T#DDG*%&)2&$H$,BOHYFLC$73Y4B64X4B 7*8I$4]]3/BZ M9S6L[<*8+F)E%NR@FY$%3E!-LY'0,[M"B6B*3%+.0."\9]TV;@:^L<\-OE!< MRYTQ&"4SSG^:R7W4LQQ#"!,,E4$@^F^% TP2 Z1I_"HQK2JD<=P=;]'?Y]JU MEAF1..#)5QJIN&?Y%D0X)\M$C?GZ(Y9Z6@8OY(G,?V%=VCH6A$NI>%HZ:P8I M9<4_V91YV'%HM(\XN*6#N^_0/.+@E0Y>+K1@ELL:$D6"KN!K$,9:HYE!GIO< M6ZNAS%1QHH3>I=I/!?>?!I\?[N#Q]MO=Y!+&&'(6TH22/,=\#E,6HE#Z-, C MV<"(2VIV))P/4:\F\@*N8#H9POG9!9R!,8OY4A(6R:ZM-#\3Q0Y++OV"BWN$ M2\.%!\Y4+.&.11@]!["UL$J=NU77=T\B#C&\!J]Q":[C>C6$!B]W=T_0\:ID M>SF>=P3O%>FUIH\CZP*^CWF2@#ZP:R*B'W4I+2(VZR.:-^!&9B3$GJ4ON42Q M0BMX^Z;1=M[5I>,_@3U+3K-*3O,4>J % U$PPP5EC+*%28^*$9Z0B#KA!5HK M1S-OU2IHMIRNO=K54V/3:%4VSVBV*IJMDS0_""ZE?BA"_69*!,5!Z5T M*<.E$,@49"@HC^JX%R':.[RNW,X>]Y,T_K(6[4ID^P4B*?LGD2=#O/9DM@\R MUJFO8Z>2V#DI\9XIU'$5X$9W1(EU"CJ'9?):>V4ZM'']>F9^Q=%\_\ 4GP(/1.@[+2'!N89TKCN:D2C::S%1/,L[U(PKW>_R8:R_2% 8 [T_ MYUQM)R9 ]8T3_ 902P,$% @ JH)V6 %&ULM5GO;_(V$/Y7K$R;-FEJ8O.CM ,D2M]W M0U-I!>WV8=H'$P[(FL29;:"5WC]^=I(F) U>J[/Z>\6>Q M 9#H)0IC,7 V4B;7KBO\#4147+ $8O5DQ7A$I;KE:UUXUH M$#O#?CKVP(=]MI5A$,,#1V(;192_WD#(]@,'.V\#LV"]D7K '?83NH8YR*?D M@:L[MT!9!A'$(F QXK :."-\/28];9#.^". O3BX1IK*@K%G?3-9#AQ/>P0A M^%)#4/5O!V,(0XVD_/@W!W6*-;7AX?4;^M>4O"*SH +&+/PS6,K-P.DY: DK MN@WEC.U_@YQ01^/Y+!3I7[3/YWH.\K="LB@W5AY$09S]IR]Y( X,6N2( N2 M!J'XJ>]*M;9&X./XX("D #9ZVBABW4N#VL1CG+J$QBWV( M):=I!L\"\8S^NH-H ?QO] T]Q8&$)9I+*D$4#YI";5Q.%_ZU2*@/ T=5M@"^ M V?XPW>XZ_W2%!1+8)7(M(O(M%/TUI'(- 5DM!!JP)>-S-LVF5L"JS#O%,P[ MQIR8;O7;16RE&FB6':*);P;234%T1]X-<AN7//4E6P*K1.>RB,ZEW?2^M,G<$EB%>:]@WK.1WKUWZ4WJ MV6U#9 MS>TJ"7\PO_T\%812I+YN;^H3'JEVA^2&QLB[Z'RO9_$\A[X= MT15YB/"[>JB7@W%*E0PIR9#SI;GN[DJ(HSOZ#^.%A;G!F_TY.14LH56C5XH[ MW+)<"%;EFRVT*OM2P&&C2CI7(;3?97FG7@BF*54RI2;#9E%VUD)0S^_H2Q!M M(W-M6))S>93.(0YQJ0YQUW)M6-5^MM"J[$OUAXT2J\:>:_8)<#U$U]#(/L/# M^+"[7WBDGOKG4':XE';8K.U&67GK0O$AV-%%^)E:>=RST[X9EH1@'L)SR$I< MZDI\9;DNK"I'6VC5?9M2.A*C.#O3-R-?M/)CHE8XQBE5,J42)&8E>'*1YWCU M(N_5?6V ^AEH?,+ M#PJ49GIVL%2,%D>0H_3@K39^@Z_'V4%B"9.=:]Y1O@YB@4)8*4COXE*5,<^. M"K,;R9+TM&W!I)(JZ>4&Z!*XGJ">KQB3;S=Z@>+ =O@?4$L#!!0 ( *J" M=EA#HE/W40H 'N5 9 >&PO=V]R:W-H965T)*@V>($TK;0? M?H$0XZG)V%1W^Z:UB><:;/,7,_.S\=E]EG\J;I4JK2_+15JS M6[6,BQ?92J757ZZS?!F7U=W\9ERL,+XX6\4WZDJ5'U9O\^K> M>*W,DZ5*BR1+K5Q=GX]>VJ=R>E0W:![Q>Z+NBXW;5OU4/F;9I_I.-#\?3>H] M4@LU*VLBKO[[K"[58E%+U7[\MT5'ZS[KAINW'W6_>?+5D_D8%^HR6_PKF9>W MYZ/CD357U_'=HGR7W8>J?4('M3?+%D7SKW7?/G8RLF9W19DMV\;5'BR3].'_ M^$O[0FPTJ)S^!D[;P/FVP?2)!F[;P-VWP;1M,-VWP4';X.#;!H=/-#AL&QSN MV\-1V^!HWP;';8/C?1N6Q^N/.N7 M/_]Z-BZK?:KE\:SM_]5#_\X3_=O6ZRPM;PM+I',U[VGO[VCO&(!Q]6*L7Q'G M\15YY1C%-[/RA>7:SYKGWK-#E^;F\BZMFD^>;.[MW]SI:2[VWGG[N._5-#?W MU,SXW(/]F_?M?&AN_G*5&U^Z:/^7;M+37.YH'J?KE\XU'$?NNK+)NK:$E_4[*X^25AOKJ^3F3234T^+Q9!62? 8F%)!:1F(0PK0H.UU5P:*R" MJ\JKADESZU4U+9YO3T[T85;?\6_TAQ[_).:1F" QG\0"$@M)+"(Q"6%:E1RM MJ^0('T,=D75!8AZ)"1+S22P@L9#$(A*3$*;5Q?&Z+H[-9X^Z&)Y_;$X=LVRY M4FD1-PNUZDM]6_75A5$<6A)DW(6A1S^)>20F2,PGL8#$0A*+2$Q"F%9(]J2+ M02;X>*DEH=) -0_5!*KYJ!:@6HAJ$:I)2M-+9",IM(UGF]^K$DG2&VNE\B2; M6]=YMGQ8<;+F<=D[<#*#@PN$U#Q4$ZCF[W@C#JRO*LZ+WF(@]R-$M0C5)*7I MQ>!TQ>#\E+58#2X34/%03K;:Y'CL]W![J^VBO :J%J!:AFJ0TO2"ZM-LV MQ]UO5=Y\6BN=J>]?F37W,;@:T'P;U02J^:@6H%J(:A&J24K3:Z;+N6T^Z+;1 MI!O5/%03J.:C6H!J(:I%J"8I32^1+O*VS9GW]ZS7FLG!)8(FW*@F4,UOMJHE6VUSP.G%ZUKO(3@-4"U$M0C5):7H]=-&[;<[> M7R=ILKQ;6O$RNTO+NBZRELL" MC=E1S4,UT6K:9SZ<2<^'/GRTWP#50E2+4$U2FO[UN2Y*=XPYY(^>NKR_SXQ3 M%_/>#:TD5/-03:":CVH!JH6H%J&:I#2]VKI4WK'QJ8N#YO*HYJ&:0#4?U0)4 M"U$M0C5):7J)=%F]\W.R>G,W@\L&S>I133C;67W?U 7M-$"U$-4B5).4IM=# M%]4[YJ@>GKJ8>QM<%FAHCVJBU;2IR[1WZH+V&Z!:B&H1JDE*TRNC"^0=8YIY MT5SWY(D153<3>:P?XRP$C>E1S4,U@6H^J@6H%J):A&J2TO3"Z6)ZYX"?A: Q M/:IYJ"90S4>U -5"5(M035*:7B)=HN^8$_WA'Y\W@X,+! WA44V@FK_CC9@^ M_?%Y=#]"5(M035*:7@Q=X.X8T\H]!UH[UHU[:P9-Y5'-0S6!:CZJ!:@6HEJ$ M:I+2]#KJ4GGGF!]WH0D\JGFH)E#-1[4 U4)4BU!-4II>(EU0[YB#^F[U=Y8M ME]GC"J_5]E6-Q++<2HKBK@DL=RT!HS$]JGFH)E#-1[4 U4)4BUIM<^F\[\H7 MDNI5OS9I%]*[YI >&8#5:V'QEYUK8>9=&5HTJ.:AFD U']4"5 M1+4(U26EZ M:76)O,LG\BZ:R*.:AVH"U7Q4"U M1+4(U22EZ272)?+NOHD\,"8S]S6X=M!8 M'M4$JOFH%J!:B&H1JDEW^\,1KC["TZMBXX+QYEQ^OS'9E1IXT:_?LO2Y6*X6 MV5>E+"_)U:S,=EQDGKW*/'N9>?8Z\^R%YMDKS;.7FF>O-<]>;/Y'I/YNE_J[ M4W[ AN;[J.:AFD U']4"5 M1+4(U26EZB73YOFO^&O[P\-(,#BX0--U'-8%J M_HXWPA!>HOL1HEJ$:I+2]&+HDGS7'"!3GRFEU>7[+I_ONVB^CVH>J@E4\U$M0+40U2)4DY2FETB7[[L_,=\W]S6X=M!\ M']4$JOFH%J!:Z&XG\G;?EW8BM%M):?I/*'8!_W17P+_/H.PG+":;]W-H2:&: MAVH"U7Q4"U M1+4(U22EZ777I?]3/OV?HND_JGFH)E#-1[4 U4)4BU!-4II> M(EWZ/S6G_\,7D\W@X )!(WY4$ZCF[W@C#(O)Z'Z$J!:AFJ0TO1BZT']J#OVI MQ61S-X-+Q-T>,SLG)ZX^8O;03@6J^:@6H%J(:A&J24K3ZV'CM]^-2>:/FK=\ MSR_?F?=T<$FA&3^J"53S42U M1#5(E23E*977I?Q3_GO\$_1E!_5/%03J.:C M6H!J(:I%J"8I32^1+OF?TM_A-X.#"P3-^%%-H)J_XXUP#3,7-/9'M0C5)*7I MQ=#%_E-S[(_-7(ZVYAK.T>'6\ORE>7<&'_QH6(]J/JH%J!:B6H1JDM(>"F)< MW"I5>G$97YPM57ZC+M5B45BS^J)Y]2AJ8VM5 =?U)<-/7SJC\=;V5_:IL'NV M^_9IT&P?=_S%V2J^4:_C_"9)"VNAKJNN)B^.JM->GMSI\9(^LCUE9 M9LOFYJV*YRJO'U#]_3K+RL<[=0?W6?ZI>3H7_P=02P,$% @ JH)V6#A= M')E/ P Q@H !D !X;"]W;W)K&ULM99M;]HP M$,>_RBF;ME9J26(@I1U$@K9;JZUJ!WW05/6%20X2-8F9;:"5]N%GQQ#8"%%; M;6]([/C^_MW9=UQ[SOBCB! E/*5))CI6).7DR+9%$&%*18U-,%-?1HRG5*HA M']MBPI&&N5&:V,1Q/#NE<6;Y[7SNBOMM-I5)G.$5!S%-4\J?>YBP><=RK>5$ M/QY'4D_8?GM"QSA >3.YXFID%RIAG&(F8I8!QU''ZKI'/;>A#?(5MS'.Q=H[ M:%>&C#WJP7G8L1Q-A D&4DM0]9CA,2:)5E(B5K&G-EQ_7ZI_SIU7S@RI MP&.6W,6AC#I6RX(01W2:R#Z;G^'"H:;6"U@B\E^8+]8Z%@13(5FZ,%8$:9R9 M)WU:!&+-H$ZV&)"% N5RLU_9*[FELKN#C3IS*07'V- ME9WT!]>7QU_/+K^=G/8''^'T^\WY]8\]&)@S C:"K@Y;+)]!W0#HHY \#B2& M,) L> 2:A= ?W$!W3GDH8.<$)8T3L0O[V]?>7V Z1/X (J(J12\02#&M3= M/2 .J<-[L)>@YE&Q0[T(>CW?H;XMZ$;OOL^2!-3ETL%[*'/=R#3*973"'HD) M#;!CJ8P4R&=H^1_>N9[SJ0*R44 VJM3]'DUH%B#LJ/,QGN_"K](8&%:CYN5J MNA;,_$;#;=NS$H1F@="L1/C"::;OSTL1FAL(Y- I1_ *!*\209W."./70'@; M$/NDG.&@8#BH9+A5F?0*@(-- -?QRA%:!4+KGUZ&U@:#1^KE"(<%PF%ETMSE M!5;%H3M#KOXP(,\BN%(U!N&^.U351I7XTC0Z_ ]IY#JK"NN\.':ARGC*!4R0 MF^CI,*Y*3&GY,^JM]5C6&EO.TUVK^^Z+<^LM5(N_%;*>[S72W()%5ECD%?GV M%C"R;7FEMKHKNJS^_("_1:LQL:]:M;0,E(!)HNHY@MFK2N:4U6RTV'=T'Y.,X$)#A2ID[M0)5K;IHF M,Y!LDCW32MIU=\/XDU@ 2/2V+<(%)$15S6RPYD,@8);'M.HYO)X2F5K]KGCWP?I>M9$Q3>.!(K)*$\)+F!9QS-F!FW[H@D_2YG&\3U:(6F M&T8;8ZV\H:E>QK'DZBU5=K(__O)Y^-N'S[_?C1['/Z/1'Y./7_Y^CSZQ]'(- M0D*$QL#7-(1+K56$;C>$1P)=W($D-!;OT"6:C._0Q8_ONK94=#2H'>93#[*I MW2-38Q?=LU0N!!JE$43[ +;RHW#&W3HS@:O=4S;3+H(#8QVCTI03D,CJF3A$YJD5 KT]1Z2*?!_Z@1LQ-<[_$8L M20@]2VUAH68#J__3#]AW?JES_DQ@>U*T"BE:!MT[)L6"\&T,#5FB#B%!S#8> M/>LVH*^W4Z6.VM2U.K3.J<.9P/9T:!J1%U*U>(\Z)JQ<46@2-+-6YT*KS+:A(WPYP M=84:P4^DWBFH=UZCWJZCGEGY)>HMOU.EW@A^(O7K@OKU:]3].NK7%>H>;E6I M-X*?2!T[N^O5>8U\4'LU.A7V095[,_BIY$NY ?[VO3\Z?D+E,&5GL.?7G%'- M\YWJC[OSQVWTYP&X27S3$$Z_DYOG^-[+Z%QH^XKL,A3LO>6]C,^:H)P+;5^+ M78J"&V_^D^[F'+)\]%=B_BWR#;Q+.'!SQE&)<)*JL!]/FF.\$?.[U_5,:/L* M[!(8[+]IC)\IX\BU>(O\!>\2&-RX]@\W0\VXEKHB@X,DU2Y5M GPN2GTA=J6 MJU1F]6#QM/B8<&M*Z(/G _V1P53*.YCL"\4]X7.:"A3#3$$Z5X&*4IX5_5E' MLJ6IFZ=,JBK<-!= (N!Z@'H_8TQN.WJ"XM-+_W]02P,$% @ JH)V6*1A M!&LC!0 V2< !D !X;"]W;W)K&ULM9K9;N,V M%(9?A7 '[01(K<5K4MM 8FTS;3ING+0H!KU@9,86(HD>DHHS0!^^U!+9HG"F(];*R'6EYK&_16),&_3-8GEE4?* M(BSD*5MJ?,T(7F2B*-1,7>]K$0[BUF24EEF MW#):KP6WP7(ET@)M,EKC)9D3<;^>,7FFE91%$)&8!S1&C#R.6U?&I6?T4T%6 MX\^ ;/C.,4IOY8'2I_3DTV+WLP#YF1*P[^"A5B-6\,66I!'G(3BEFX\4MQ0+^7Y-.397[0IZNHM MY"=K=N6#R:B!U8C*_^S+]U?ORFV7?SG]"]A_WG^[^/D?S%68$W9)UPOR5= :: M,;ID.$(?+2)P$/(S]#.ZGUOHXX!X.>R4![?K6C"<;S@ M(TW(6-,6-;^(:YK'91Z(RT W-!8KCNQX018U>NN(WE0 --E)94^9KSUU;2J) M5VO61H9QCDS=-.MN2"W_G(1MU#DLM]1RB_BEO%,CMT^7U[7N'+GW9-E&^O"@ MW#VEZ_2#4']IQ4-%X1QZ?EO22"^H]^I(.CK MU0,73(ZG_]1$>9U3N_74=)*YY&OLDW%+SB*MF=Z0][[KLM&H.9&@N),P#@E7\ MTRO]TU/Z9_8Z+Z]9X),Z?RCU3?T!";-R6&_GP1O&GC=JJ@PNAGO.@ S*A81Y M0+"*,_JE,_I*9QQ96DU@'0@),R"A-F0, <2YD+"/"!8Q8'#TH%#Y0!X2]*,31 O$=L.@O01 M^3M+KCH'*JE-'0@)LX9O9L.>KNM[4^8IE1S(L%Q(F <$JSCFHG3,Q1'''/)) MMA[/4QNUB_"$*QB&D/? M)L[T=WZ'*QHX]@XT50?2=#@!I=F@- >4YH+2/"A:U6X[>5JCP2O?UEE-_&:\ MG23VK:8,HK'5(&DV*,T!I;F@- ^*5K6:N;6:^3^S"P6@\H8^?#/OJ9MI;"9( MF@U*J*)H(+'"_2]?FQ%;D:W'1) M#DJS0&DV*,T!I;D%+9W]=EN^2$S- <_B@- N49H/2 M'%":"TKSH&A5*VX_#ACJKP.*5$>>YJCU(>CG 5":!4JS06E.05/GY%S0-KUC M;>:^T7;V"T6$+;.]8USZ(8E%OB&F+"WWIUUEN[+VRBWCTLYWF6TQ^::W&\R6 M06GPBZSG8E/5 A:)0=K@B68V1:05Y_I'*$+$[2!LK= M?)/_ %!+ P04 " "J@G98OCO"?#@# #N$P #0 'AL+W-T>6QEF^!"&Y73. MJ8))BV1*Y]38KIZ%9:$934L@Y2+L=3IQF%,NR6@@%_E=;LI@JA;2#$GS=V5GGZ?)V-WY1 9'R!Z MU;$7JERAF'Q\F/P^<4SZYB#I/Y70;W/:D?WP&:'ACD0K0&>\0%1H."&L.TO+.=ZN$J^ (*ZO;C MJK .9YJNNKUKLB94-YMDHG3*=)NF2YK0:"!8!G8TG\WA;E01 FB,RFTCY72F M)*T\-(RZ866G3(@'>$^_9UO:RVQCQ3JP7K)M6D-UT\FX#NAOJCGM3=GH5;I! MP9^5^;2PPY%5'^J3W6N6\6757V:M 4R]BZO3HA"KCX+/9,[:_;#8HE:D-,$V"9Z8-GVY&?FI:/+*E:&>>R?H^>_.\XQ)IJG8-&UK M_YAG^=6.ZXWM7WBN?JWL.O::C&Z.WV.]F1^[R?@43)[$,C9/,UCFFC09P7AR2;W#N%.NDP63!A>&R[LUYFC+YXCACY0V=V#]FMO3M M\RG+Z$*8QQ8!FO)SH@A6 M%?.&O<$XDB08 K7HK]$X1F8GAH]_?;"W)(J2Q(\ YG<011@";R..8 [ X9$ M4;4/[NQ'8;-/A>O_\(U^ U!+ P04 " "J@G98EXJ[', 3 @ "P M %]R96QS+RYR96QSG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!5J(/V!(%BD6= MOZ_:I7&0"QEY/3P2W!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6' MTD!$VV-#L%HL/D N&6:WO606IW.D5XA-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T M>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 ( *J"=E@/EL IUP0 M *(E / >&PO=V]R:V)O;VLN>&ULQ9I;;^(X&$#_BL7+=J7.0B[TIF&D M$-Q.M)"P)*VV3\A-3+$FL9$=VMGY]>N$8<>9,I_VQG703(B:YC437&H8IQ5[!LM)H/1 *FM>/TL)/LF>$W*-)>B+"<#YU#P0&7-\C?9:0.9D2?5 MYM3D:44TR&1P,=(-;IA4=5NC;9]HQA>J*Q]2^UKB?%?L?X<]., MOHNA<1MM/QP_#YUX(_]/-XK-AN5T)O)]17E]Z$=)RP:0JRW;J0'BI**3P;$* M(KQ F->ZDU#$#TWINLV=ZDM'Q>&N:XUK]*&\8;I 1D4+;@\RU&E1LD)?O4!3 M4A*>4]1VKC( 70#0[0T0G2V) >D!D-X[0J8-1/,#A<0&)3LJ#4@?@/1[@PR) MVAJ08P!R;!VRH%QIPI.X!N0% 'EA%W*&TW 5+;,HB5%RBZ;W:13C-#7@+@&X M2[MP:7071[=1&,09"L(PN8^S*+Y#RV0>A1$V(:\ R"N[D--@'L0A1NEGC#,4 M)HME$N,X,^FN ;IKNW1S'*2=GG)&T P]LDL3)QE.T3)X#*9SC()XAN9)?/R0&!,S\2$1.)8-LFO/(?.](:E(?FQQ(84 MXUI6S$%XWZ'4[R86I!37LE+,N?HD'+@OL2R24Q/-24C(+*YEL_QBI8K.9K0F MK#0Q(;>X[^B6MZ/9-S$AM[BVW0)BCDU,2#.N96!TS+*%8$QSL>9!%O)ZM-#:,2WD01;R>K30VC$MY$$6\GJTT-HQ+>1! M%O)ZM-#:,2WD01;R>@J8G:.(OW3BHAYD(:^G_A2_GR 5"BIMU0B$Q.RD&_90MT_/:.R:D_F9DSE8L\[SR9X2F/90F"XMQ. M\2$+^98M!(9[NYB0A7S;(3.7,3$[*0;]E"74P-)BJ* MIE2W17_&A"SD6[;02V-N*>@XU3SHA M"XTM6PC$[ RA,62A\3ONA=X$_KN8D(7&/<3CSI$[^%3F*F M^ZHB4@O>Q(0L-+:]%SJ)&0O^X86JV@Q,CJ]' M??H74$L#!!0 ( *J"=E@,/Y#\Y0$ '\A : >&PO7W)E;',O=V]R M:V)O;VLN>&UL+G)E;'/-VCM.PT 4A>&M1%X D_N8\%!"14.+V( 5)@^1Q)9G M$,GNB4(1CD5!@^94UMCR]=_XDV5[_I)V;=EVA[S9]GERW.\.>=%L2ND?0LC+ M3=JW^:;KT^%\9-4-^[:]ZD5)K):SNL4UDTX;B[[L[ALI&;\^1F\ORV:(;G M-VE"[2"%(*T?9!!D]8,<@KQ^4(2@6#]H!D&S^D&W$'1;/^@.@N[J!]U#T'W] M()FBC%."I!'6!%H+NOH89M ;T6]E4!O1;V50&]%O95 ;T6]E4!O1;V5 M0&]%O95 ;T6]E4!O0[V-0&]#O8U ;T.]C4!O&[TL(=#;4&\CT-M0;R/0VU!O M(]#;4&\CT-M0;R/0VU!O(]#;46\GT-M1;R?0VU%O)]#;46\GT-M'+[L)]';4 MVPGT=M3;"?1VU-L)]';4VPGT=M3;"?2.J'YNZ:OPX681@'QCS^8)J[5-CJ8DC,^-J M'>)?-V=6YTL])R8&@R'+31.H"?W0UD@FHR>:Z545>L^;>-N7IADGCBJ?]!YW M$]NL<:*MKE/MPHNNXRRVJ9@/VXI\>K[$B1[-;%;F5)A\5<.=.$71*&NTEW1F_/) M(>XP[7[YU?E=F7.!<>;4&>OCB3FZ/.YP).WJOHV%R(7R_",>$V/IJY^/VM,N MJ/AE=MS>#^.6W7EXUEVNW^.O9WRL?V$? J0/"=*' NDC ^EC"-+'+4@?=R!] MW(/TP0&UL4$L! M A0#% @ JH)V6" XS6[M *P( !$ ( !KP &1O M8U!R;W!S+V-O&UL4$L! A0#% @ JH)V6)E&PO=V]R:W-H M965T&UL4$L! A0#% @ JH)V6&N!9^(O!P HQX !@ M ("![ \ 'AL+W=O&PO=V]R:W-H965T&UL M4$L! A0#% @ JH)V6/L.V=?4!P 8R( !@ ("!9B M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V M6,N_SZX.(P VV< !@ ("!)C8 'AL+W=O&PO=V]R:W-H M965TQC !X;"]W;W)K&UL4$L! M A0#% @ JH)V6#>D/.D;! P D !D ("!7&@ 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V M6/A:NN2Y!0 #@T !D ("!GGH 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6 GCARV() 9'0 M !D ("!#(T 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6-)WD?!O!0 M@\ !D M ("!;+H 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ JH)V6&"S;(GO @ )0L !D ("!),H 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6 JO M)Q*_ @ I D !D ("!QM( 'AL+W=O&PO=V]R:W-H965T/8 !X;"]W;W)K&UL4$L! A0#% @ JH)V6-;2R1LR @ MP0 !D M ("!;]X 'AL+W=O=2P4H# [$ &0 @('8X >&PO M=V]R:W-H965T&UL4$L! A0#% @ JH)V6/1G-,9R @ U 4 !D ("! M\^8 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ JH)V6%\"Y%F' @ Z04 !D ("!#?( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6 ,DA^[8 M!0 /", !D ("!7_H 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6!,N/&PO=V]R M:W-H965T&UL M4$L! A0#% @ JH)V6)C"D(!R P &PO=V]R:W-H965T'DIP, .,- 9 M " @5$; 0!X;"]W;W)K&UL4$L! A0#% @ MJH)V6 HS]H0T P L@T !D ("!+Q\! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6/4@GU,& P M[P@ !D ("!GRH! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ JH)V6#A=')E/ P Q@H !D M ("!9CT! 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ JH)V6+X[PGPX P [A, T ( !?$H! 'AL M+W-T>6QE&PO=V]R:V)O;VLN>&UL4$L! A0# M% @ JH)V6 P_D/SE 0 ?R$ !H ( !S%,! 'AL+U]R M96QS+W=O XML 72 Show.js IDEA: XBRL DOCUMENT // 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)}}} XML 73 report.css IDEA: XBRL DOCUMENT /* 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; } XML 75 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.1 html 145 330 1 true 57 0 false 9 false false R1.htm 000100 - Document - Document and Entity Information Sheet http://tandyleather.com/role/DocumentAndEntityInformation Document and Entity Information Cover 1 false false R2.htm 010000 - Statement - Consolidated Balance Sheets Sheet http://tandyleather.com/role/ConsolidatedBalanceSheets Consolidated Balance Sheets Statements 2 false false R3.htm 010100 - Statement - Consolidated Balance Sheets (Parentheticals) Sheet http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals Consolidated Balance Sheets (Parentheticals) Statements 3 false false R4.htm 020000 - Statement - Consolidated Statements of Operations and Comprehensive Income Sheet http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome Consolidated Statements of Operations and Comprehensive Income Statements 4 false false R5.htm 030000 - Statement - Consolidated Statements of Cash Flows Sheet http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows Consolidated Statements of Cash Flows Statements 5 false false R6.htm 040000 - Statement - Condensed Consolidated Statements of Stockholders' Equity Sheet http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity Condensed Consolidated Statements of Stockholders' Equity Statements 6 false false R7.htm 060100 - Disclosure - DESCRIPTION OF BUSINESS Sheet http://tandyleather.com/role/DescriptionOfBusiness DESCRIPTION OF BUSINESS Notes 7 false false R8.htm 060200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES Sheet http://tandyleather.com/role/SignificantAccountingPolicies SIGNIFICANT ACCOUNTING POLICIES Notes 8 false false R9.htm 060300 - Disclosure - BALANCE SHEET COMPONENTS Sheet http://tandyleather.com/role/BalanceSheetComponents BALANCE SHEET COMPONENTS Notes 9 false false R10.htm 060400 - Disclosure - LEASES Sheet http://tandyleather.com/role/Leases LEASES Notes 10 false false R11.htm 060500 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT Notes http://tandyleather.com/role/NotesPayableAndLongtermDebt NOTES PAYABLE AND LONG-TERM DEBT Notes 11 false false R12.htm 060600 - Disclosure - EMPLOYEE BENEFIT AND SAVINGS PLANS Sheet http://tandyleather.com/role/EmployeeBenefitAndSavingsPlans EMPLOYEE BENEFIT AND SAVINGS PLANS Notes 12 false false R13.htm 060700 - Disclosure - INCOME TAXES Sheet http://tandyleather.com/role/IncomeTaxes INCOME TAXES Notes 13 false false R14.htm 060800 - Disclosure - COMMITMENTS AND CONTINGENCIES Sheet http://tandyleather.com/role/CommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 14 false false R15.htm 060900 - Disclosure - SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK Sheet http://tandyleather.com/role/SignificantBusinessConcentrationsAndRisk SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK Notes 15 false false R16.htm 061000 - Disclosure - STOCKHOLDERS' EQUITY Sheet http://tandyleather.com/role/StockholdersEquity STOCKHOLDERS' EQUITY Notes 16 false false R17.htm 061100 - Disclosure - Insider Trading Arrangements Sheet http://tandyleather.com/role/InsiderTradingArrangements Insider Trading Arrangements Notes 17 false false R18.htm 070200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesPolicies SIGNIFICANT ACCOUNTING POLICIES (Policies) Policies 18 false false R19.htm 080200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesTables SIGNIFICANT ACCOUNTING POLICIES (Tables) Tables http://tandyleather.com/role/SignificantAccountingPolicies 19 false false R20.htm 080300 - Disclosure - BALANCE SHEET COMPONENTS (Tables) Sheet http://tandyleather.com/role/BalanceSheetComponentsTables BALANCE SHEET COMPONENTS (Tables) Tables http://tandyleather.com/role/BalanceSheetComponents 20 false false R21.htm 080400 - Disclosure - LEASES (Tables) Sheet http://tandyleather.com/role/LeasesTables LEASES (Tables) Tables http://tandyleather.com/role/Leases 21 false false R22.htm 080700 - Disclosure - INCOME TAXES (Tables) Sheet http://tandyleather.com/role/IncomeTaxesTables INCOME TAXES (Tables) Tables http://tandyleather.com/role/IncomeTaxes 22 false false R23.htm 081000 - Disclosure - STOCKHOLDERS' EQUITY (Tables) Sheet http://tandyleather.com/role/StockholdersEquityTables STOCKHOLDERS' EQUITY (Tables) Tables http://tandyleather.com/role/StockholdersEquity 23 false false R24.htm 090100 - Disclosure - DESCRIPTION OF BUSINESS (Details) Sheet http://tandyleather.com/role/DescriptionOfBusinessDetails DESCRIPTION OF BUSINESS (Details) Details http://tandyleather.com/role/DescriptionOfBusiness 24 false false R25.htm 090200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Deconsolidation of Foreign Subsidiaries (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesDeconsolidationOfForeignSubsidiariesDetails SIGNIFICANT ACCOUNTING POLICIES, Deconsolidation of Foreign Subsidiaries (Details) Details 25 false false R26.htm 090202 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Error Correction (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails SIGNIFICANT ACCOUNTING POLICIES, Error Correction (Details) Details 26 false false R27.htm 090204 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details) Details 27 false false R28.htm 090206 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Foreign Currency Translation and Transactions (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails SIGNIFICANT ACCOUNTING POLICIES, Foreign Currency Translation and Transactions (Details) Details 28 false false R29.htm 090208 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details) Details 29 false false R30.htm 090210 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesDiscountsDetails SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details) Details 30 false false R31.htm 090212 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details) Details 31 false false R32.htm 090214 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Leases (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails SIGNIFICANT ACCOUNTING POLICIES, Leases (Details) Details 32 false false R33.htm 090216 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Impairment of Long-lived Assets (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesImpairmentOfLonglivedAssetsDetails SIGNIFICANT ACCOUNTING POLICIES, Impairment of Long-lived Assets (Details) Details 33 false false R34.htm 090218 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Earnings Per Share (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails SIGNIFICANT ACCOUNTING POLICIES, Earnings Per Share (Details) Details 34 false false R35.htm 090220 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details) Details 35 false false R36.htm 090222 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details) Details 36 false false R37.htm 090224 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Shipping and Handling Costs (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails SIGNIFICANT ACCOUNTING POLICIES, Shipping and Handling Costs (Details) Details 37 false false R38.htm 090226 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Advertising (Details) Sheet http://tandyleather.com/role/SignificantAccountingPoliciesAdvertisingDetails SIGNIFICANT ACCOUNTING POLICIES, Advertising (Details) Details 38 false false R39.htm 090300 - Disclosure - BALANCE SHEET COMPONENTS, Inventory, Property and Equipment (Details) Sheet http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails BALANCE SHEET COMPONENTS, Inventory, Property and Equipment (Details) Details 39 false false R40.htm 090302 - Disclosure - BALANCE SHEET COMPONENTS, Short-term Liabilities (Details) Sheet http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails BALANCE SHEET COMPONENTS, Short-term Liabilities (Details) Details 40 false false R41.htm 090400 - Disclosure - LEASES, Lease Assets, Liabilities and Lease Cost (Details) Sheet http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails LEASES, Lease Assets, Liabilities and Lease Cost (Details) Details 41 false false R42.htm 090402 - Disclosure - LEASES, Maturity of Lease Liabilities (Details) Sheet http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails LEASES, Maturity of Lease Liabilities (Details) Details 42 false false R43.htm 090404 - Disclosure - LEASES, Operating Leases Other Information (Details) Sheet http://tandyleather.com/role/LeasesOperatingLeasesOtherInformationDetails LEASES, Operating Leases Other Information (Details) Details 43 false false R44.htm 090406 - Disclosure - LEASES, Lease Term and Discount Rate (Details) Sheet http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails LEASES, Lease Term and Discount Rate (Details) Details 44 false false R45.htm 090500 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT (Details) Notes http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails NOTES PAYABLE AND LONG-TERM DEBT (Details) Details http://tandyleather.com/role/NotesPayableAndLongtermDebt 45 false false R46.htm 090600 - Disclosure - EMPLOYEE BENEFIT AND SAVINGS PLANS (Details) Sheet http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails EMPLOYEE BENEFIT AND SAVINGS PLANS (Details) Details http://tandyleather.com/role/EmployeeBenefitAndSavingsPlans 46 false false R47.htm 090700 - Disclosure - INCOME TAXES, Provision for Income Taxes (Details) Sheet http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails INCOME TAXES, Provision for Income Taxes (Details) Details 47 false false R48.htm 090702 - Disclosure - INCOME TAXES, Income Before Income Taxes (Details) Sheet http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails INCOME TAXES, Income Before Income Taxes (Details) Details 48 false false R49.htm 090704 - Disclosure - INCOME TAXES, Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities (Details) Sheet http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails INCOME TAXES, Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities (Details) Details 49 false false R50.htm 090706 - Disclosure - INCOME TAXES, Reconciliation of Effective Tax Rate from Statutory Rate (Details) Sheet http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails INCOME TAXES, Reconciliation of Effective Tax Rate from Statutory Rate (Details) Details 50 false false R51.htm 090708 - Disclosure - INCOME TAXES, Reconciliation of Uncertain Tax Positions (Details) Sheet http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails INCOME TAXES, Reconciliation of Uncertain Tax Positions (Details) Details 51 false false R52.htm 090900 - Disclosure - SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK (Details) Sheet http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK (Details) Details http://tandyleather.com/role/SignificantBusinessConcentrationsAndRisk 52 false false R53.htm 091000 - Disclosure - STOCKHOLDERS' EQUITY, 2013 and 2023 Restricted Stock Plans (Details) Sheet http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails STOCKHOLDERS' EQUITY, 2013 and 2023 Restricted Stock Plans (Details) Details 53 false false R54.htm 091002 - Disclosure - STOCKHOLDERS' EQUITY, Summary of Activity for Restricted Stock and RSU Awards (Details) Sheet http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails STOCKHOLDERS' EQUITY, Summary of Activity for Restricted Stock and RSU Awards (Details) Details 54 false false R55.htm 091004 - Disclosure - STOCKHOLDERS' EQUITY, Non-vested Service-based Awards (Details) Sheet http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails STOCKHOLDERS' EQUITY, Non-vested Service-based Awards (Details) Details 55 false false R56.htm 091006 - Disclosure - STOCKHOLDERS' EQUITY, Share Repurchase Program (Details) Sheet http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails STOCKHOLDERS' EQUITY, Share Repurchase Program (Details) Details 56 false false All Reports Book All Reports [dq-0542-Deprecated-Concept] Concept ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy in us-gaap/2023 used in 1 facts was deprecated in us-gaap/2024 as of 2024 and should not be used. ef20015300_10k.htm 9579 [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 6 fact(s) appearing in ix:hidden were eligible for transformation: dei:CurrentFiscalYearEndDate, dei:SecurityExchangeName, us-gaap:NumberOfOperatingSegments, us-gaap:NumberOfReportableSegments, us-gaap:PropertyPlantAndEquipmentUsefulLife - ef20015300_10k.htm 11 ef20015300_10k.htm tlfa-20231231.xsd tlfa-20231231_cal.xml tlfa-20231231_def.xml tlfa-20231231_lab.xml tlfa-20231231_pre.xml image00001.jpg image00002.jpg image00003.jpg http://fasb.org/srt/2023 http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 78 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "ef20015300_10k.htm": { "nsprefix": "tlfa", "nsuri": "http://tandyleather.com/20231231", "dts": { "inline": { "local": [ "ef20015300_10k.htm" ] }, "schema": { "local": [ "tlfa-20231231.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/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/currency/2023/currency-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd", "https://xbrl.sec.gov/exch/2023/exch-2023.xsd", "https://xbrl.sec.gov/naics/2023/naics-2023.xsd", "https://xbrl.sec.gov/sic/2023/sic-2023.xsd", "https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd" ] }, "calculationLink": { "local": [ "tlfa-20231231_cal.xml" ] }, "definitionLink": { "local": [ "tlfa-20231231_def.xml" ] }, "labelLink": { "local": [ "tlfa-20231231_lab.xml" ] }, "presentationLink": { "local": [ "tlfa-20231231_pre.xml" ] } }, "keyStandard": 300, "keyCustom": 30, "axisStandard": 23, "axisCustom": 0, "memberStandard": 41, "memberCustom": 16, "hidden": { "total": 25, "http://fasb.org/us-gaap/2023": 18, "http://xbrl.sec.gov/dei/2023": 7 }, "contextCount": 145, "entityCount": 1, "segmentCount": 57, "elementCount": 543, "unitCount": 9, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 625, "http://xbrl.sec.gov/dei/2023": 38, "http://xbrl.sec.gov/ecd/2023": 4, "http://fasb.org/srt/2023": 1 }, "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": "c20230101to20231231", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.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": "c20231231", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R3": { "role": "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals", "longName": "010100 - Statement - Consolidated Balance Sheets (Parentheticals)", "shortName": "Consolidated Balance Sheets (Parentheticals)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.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": "c20230101to20231231", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.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": "c20230101to20231231", "name": "us-gaap:NetIncomeLoss", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:CostOfGoodsAndServicesSoldDepreciation", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R6": { "role": "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "longName": "040000 - Statement - Condensed Consolidated Statements of Stockholders' Equity", "shortName": "Condensed Consolidated Statements of Stockholders' Equity", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c20211231_StatementEquityComponentsAxis_CommonStockMember", "name": "us-gaap:StockholdersEquity", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20211231_StatementEquityComponentsAxis_CommonStockMember", "name": "us-gaap:StockholdersEquity", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R7": { "role": "http://tandyleather.com/role/DescriptionOfBusiness", "longName": "060100 - Disclosure - DESCRIPTION OF BUSINESS", "shortName": "DESCRIPTION OF BUSINESS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "7", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R8": { "role": "http://tandyleather.com/role/SignificantAccountingPolicies", "longName": "060200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES", "shortName": "SIGNIFICANT ACCOUNTING POLICIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R9": { "role": "http://tandyleather.com/role/BalanceSheetComponents", "longName": "060300 - Disclosure - BALANCE SHEET COMPONENTS", "shortName": "BALANCE SHEET COMPONENTS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R10": { "role": "http://tandyleather.com/role/Leases", "longName": "060400 - Disclosure - LEASES", "shortName": "LEASES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R11": { "role": "http://tandyleather.com/role/NotesPayableAndLongtermDebt", "longName": "060500 - Disclosure - NOTES PAYABLE AND LONG-TERM DEBT", "shortName": "NOTES PAYABLE AND LONG-TERM DEBT", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R12": { "role": "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlans", "longName": "060600 - Disclosure - EMPLOYEE BENEFIT AND SAVINGS PLANS", "shortName": "EMPLOYEE BENEFIT AND SAVINGS PLANS", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R13": { "role": "http://tandyleather.com/role/IncomeTaxes", "longName": "060700 - Disclosure - INCOME TAXES", "shortName": "INCOME TAXES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R14": { "role": "http://tandyleather.com/role/CommitmentsAndContingencies", "longName": "060800 - Disclosure - COMMITMENTS AND CONTINGENCIES", "shortName": "COMMITMENTS AND CONTINGENCIES", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R15": { "role": "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRisk", "longName": "060900 - Disclosure - SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK", "shortName": "SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R16": { "role": "http://tandyleather.com/role/StockholdersEquity", "longName": "061000 - Disclosure - STOCKHOLDERS' EQUITY", "shortName": "STOCKHOLDERS' EQUITY", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R17": { "role": "http://tandyleather.com/role/InsiderTradingArrangements", "longName": "061100 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c20231001to20231231", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ecd:Rule10b51ArrTrmntdFlag", "ecd:NonRule10b51ArrTrmntdFlag", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231001to20231231", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ecd:Rule10b51ArrTrmntdFlag", "ecd:NonRule10b51ArrTrmntdFlag", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R18": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies", "longName": "070200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "18", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:UseOfEstimates", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:UseOfEstimates", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R19": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesTables", "longName": "080200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "19", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R20": { "role": "http://tandyleather.com/role/BalanceSheetComponentsTables", "longName": "080300 - Disclosure - BALANCE SHEET COMPONENTS (Tables)", "shortName": "BALANCE SHEET COMPONENTS (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "20", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "srt:ScheduleOfCondensedBalanceSheetTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "srt:ScheduleOfCondensedBalanceSheetTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R21": { "role": "http://tandyleather.com/role/LeasesTables", "longName": "080400 - Disclosure - LEASES (Tables)", "shortName": "LEASES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "21", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "tlfa:LesseeOperatingLeaseAssetsAndLiabilities", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "tlfa:LesseeOperatingLeaseAssetsAndLiabilities", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R22": { "role": "http://tandyleather.com/role/IncomeTaxesTables", "longName": "080700 - Disclosure - INCOME TAXES (Tables)", "shortName": "INCOME TAXES (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R23": { "role": "http://tandyleather.com/role/StockholdersEquityTables", "longName": "081000 - Disclosure - STOCKHOLDERS' EQUITY (Tables)", "shortName": "STOCKHOLDERS' EQUITY (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R24": { "role": "http://tandyleather.com/role/DescriptionOfBusinessDetails", "longName": "090100 - Disclosure - DESCRIPTION OF BUSINESS (Details)", "shortName": "DESCRIPTION OF BUSINESS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "24", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:NumberOfStores", "unitRef": "U004", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:NumberOfStores", "unitRef": "U004", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R25": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesDeconsolidationOfForeignSubsidiariesDetails", "longName": "090200 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Deconsolidation of Foreign Subsidiaries (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Deconsolidation of Foreign Subsidiaries (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "25", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DeconsolidationGainOrLossAmount", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": null }, "R26": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails", "longName": "090202 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Error Correction (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Error Correction (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "26", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:InventoryNet", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20231231_RestatementAxis_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember", "name": "us-gaap:InventoryNet", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "us-gaap:AccountsPayableTradeCurrent", "span", "span", "span", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R27": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails", "longName": "090204 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Accounts Receivable and Expected Credit Losses (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "27", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:AccountsReceivableNetCurrent", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20211231", "name": "us-gaap:AccountsReceivableNetCurrent", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R28": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails", "longName": "090206 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Foreign Currency Translation and Transactions (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Foreign Currency Translation and Transactions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "28", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DeconsolidationGainOrLossAmount", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231_RangeAxis_MaximumMember", "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R29": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "longName": "090208 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Revenue Recognition (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "29", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R30": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesDiscountsDetails", "longName": "090210 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Discounts (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "30", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "tlfa:NumberOfClassesOfCustomerDiscounts", "unitRef": "U006", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "tlfa:NumberOfClassesOfCustomerDiscounts", "unitRef": "U006", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R31": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails", "longName": "090212 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Property and Equipment, Net of Accumulated Depreciation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "31", "firstAnchor": { "contextRef": "c20231231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember", "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231_PropertyPlantAndEquipmentByTypeAxis_MachineryAndEquipmentMember_RangeAxis_MaximumMember", "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R32": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails", "longName": "090214 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Leases (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "32", "firstAnchor": { "contextRef": "c20230101to20231231_RangeAxis_MaximumMember", "name": "us-gaap:FinanceLeaseInterestExpense", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": null }, "R33": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesImpairmentOfLonglivedAssetsDetails", "longName": "090216 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Impairment of Long-lived Assets (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Impairment of Long-lived Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ImpairmentOfLongLivedAssetsHeldForUse", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:ImpairmentOfLongLivedAssetsHeldForUse", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R34": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails", "longName": "090218 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Earnings Per Share (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Earnings Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:NetIncomeLoss", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:IncrementalCommonSharesAttributableToContingentlyIssuableShares", "unitRef": "U002", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "link:footnote", "div", "ix:continuation", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R35": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails", "longName": "090220 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Other Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "c20230101to20231231_RangeAxis_MaximumMember", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-4", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231_RangeAxis_MaximumMember", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-4", "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R36": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails", "longName": "090222 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Fair Value of Financial Instruments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-6", "ancestors": [ "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R37": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails", "longName": "090224 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Shipping and Handling Costs (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Shipping and Handling Costs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:OperatingCostsAndExpenses", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231_ProductOrServiceAxis_ShippingAndHandlingMember", "name": "us-gaap:OperatingCostsAndExpenses", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R38": { "role": "http://tandyleather.com/role/SignificantAccountingPoliciesAdvertisingDetails", "longName": "090226 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES, Advertising (Details)", "shortName": "SIGNIFICANT ACCOUNTING POLICIES, Advertising (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:AdvertisingExpense", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:AdvertisingExpense", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R39": { "role": "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "longName": "090300 - Disclosure - BALANCE SHEET COMPONENTS, Inventory, Property and Equipment (Details)", "shortName": "BALANCE SHEET COMPONENTS, Inventory, Property and Equipment (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:InventoryFinishedGoods", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:InventoryFinishedGoods", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R40": { "role": "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails", "longName": "090302 - Disclosure - BALANCE SHEET COMPONENTS, Short-term Liabilities (Details)", "shortName": "BALANCE SHEET COMPONENTS, Short-term Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:EmployeeRelatedLiabilitiesCurrent", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R41": { "role": "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "longName": "090400 - Disclosure - LEASES, Lease Assets, Liabilities and Lease Cost (Details)", "shortName": "LEASES, Lease Assets, Liabilities and Lease Cost (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:OperatingLeaseRightOfUseAsset", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "tlfa:LeaseAssets", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R42": { "role": "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails", "longName": "090402 - Disclosure - LEASES, Maturity of Lease Liabilities (Details)", "shortName": "LEASES, Maturity of Lease Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R43": { "role": "http://tandyleather.com/role/LeasesOperatingLeasesOtherInformationDetails", "longName": "090404 - Disclosure - LEASES, Operating Leases Other Information (Details)", "shortName": "LEASES, Operating Leases Other Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:OperatingLeasePayments", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "ix:continuation", "tlfa:LesseeOperatingLeasesOtherInformationTableTextBlock", "div", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:OperatingLeasePayments", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "ix:continuation", "tlfa:LesseeOperatingLeasesOtherInformationTableTextBlock", "div", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R44": { "role": "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails", "longName": "090406 - Disclosure - LEASES, Lease Term and Discount Rate (Details)", "shortName": "LEASES, Lease Term and Discount Rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "td", "tr", "table", "tlfa:LesseeOperatingLeasesLeaseTermAndDiscountRateTableTextBlock", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "td", "tr", "table", "tlfa:LesseeOperatingLeasesLeaseTermAndDiscountRateTableTextBlock", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R45": { "role": "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails", "longName": "090500 - 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": "45", "firstAnchor": { "contextRef": "c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230103_LineOfCreditFacilityAxis_JPMorganChaseBankNAMember", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R46": { "role": "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails", "longName": "090600 - Disclosure - EMPLOYEE BENEFIT AND SAVINGS PLANS (Details)", "shortName": "EMPLOYEE BENEFIT AND SAVINGS PLANS (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DefinedContributionPlanCostRecognized", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:DefinedContributionPlanCostRecognized", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R47": { "role": "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails", "longName": "090700 - Disclosure - INCOME TAXES, Provision for Income Taxes (Details)", "shortName": "INCOME TAXES, Provision for Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R48": { "role": "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails", "longName": "090702 - Disclosure - INCOME TAXES, Income Before Income Taxes (Details)", "shortName": "INCOME TAXES, Income Before Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "div", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231_IncomeTaxAuthorityNameAxis_InternalRevenueServiceIRSMember", "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R49": { "role": "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails", "longName": "090704 - Disclosure - INCOME TAXES, Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities (Details)", "shortName": "INCOME TAXES, Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:DeferredTaxAssetsInventory", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20231231", "name": "us-gaap:DeferredTaxAssetsInventory", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R50": { "role": "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails", "longName": "090706 - Disclosure - INCOME TAXES, Reconciliation of Effective Tax Rate from Statutory Rate (Details)", "shortName": "INCOME TAXES, Reconciliation of Effective Tax Rate from Statutory Rate (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "U007", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231", "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "unitRef": "U007", "xsiNil": "false", "lang": null, "decimals": "3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R51": { "role": "http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails", "longName": "090708 - Disclosure - INCOME TAXES, Reconciliation of Uncertain Tax Positions (Details)", "shortName": "INCOME TAXES, Reconciliation of Uncertain Tax Positions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c20221231", "name": "us-gaap:UnrecognizedTaxBenefits", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20211231", "name": "us-gaap:UnrecognizedTaxBenefits", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R52": { "role": "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails", "longName": "090900 - Disclosure - SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK (Details)", "shortName": "SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c20230101to20231231_ConcentrationRiskByTypeAxis_SupplierConcentrationRiskMember_StatementGeographicalAxis_US", "name": "tlfa:NumberOfSuppliers", "unitRef": "U009", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231_ConcentrationRiskByTypeAxis_SupplierConcentrationRiskMember_StatementGeographicalAxis_US", "name": "tlfa:NumberOfSuppliers", "unitRef": "U009", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R53": { "role": "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "longName": "091000 - Disclosure - STOCKHOLDERS' EQUITY, 2013 and 2023 Restricted Stock Plans (Details)", "shortName": "STOCKHOLDERS' EQUITY, 2013 and 2023 Restricted Stock Plans (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "c20181001to20181031_AwardTypeAxis_RestrictedStockUnitsRSUMember_TitleOfIndividualAxis_ChiefExecutiveOfficerMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "unitRef": "U002", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20181001to20181031_AwardTypeAxis_RestrictedStockUnitsRSUMember_TitleOfIndividualAxis_ChiefExecutiveOfficerMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "unitRef": "U002", "xsiNil": "false", "lang": null, "decimals": "0", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R54": { "role": "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails", "longName": "091002 - Disclosure - STOCKHOLDERS' EQUITY, Summary of Activity for Restricted Stock and RSU Awards (Details)", "shortName": "STOCKHOLDERS' EQUITY, Summary of Activity for Restricted Stock and RSU Awards (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "c20221231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "U002", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c20221231_AwardTypeAxis_RestrictedStockAndRestrictedStockUnitsMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "U002", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "div", "td", "tr", "table", "ix:continuation", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true, "unique": true } }, "R55": { "role": "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails", "longName": "091004 - Disclosure - STOCKHOLDERS' EQUITY, Non-vested Service-based Awards (Details)", "shortName": "STOCKHOLDERS' EQUITY, Non-vested Service-based Awards (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "c20230101to20231231_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20230101to20231231_AwardTypeAxis_ServicedBasedRestrictedStockUnitsRSUsMember", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "us-gaap:ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } }, "R56": { "role": "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails", "longName": "091006 - Disclosure - STOCKHOLDERS' EQUITY, Share Repurchase Program (Details)", "shortName": "STOCKHOLDERS' EQUITY, Share Repurchase Program (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "c20231231", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "unitRef": "U003", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "first": true }, "uniqueAnchor": { "contextRef": "c20231231_ShareRepurchaseProgramAxis_ShareRepurchaseProgramMember", "name": "us-gaap:StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1", "unitRef": "U001", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "span", "span", "div", "ix:continuation", "div", "div", "div", "body", "html" ], "reportCount": 1, "baseRef": "ef20015300_10k.htm", "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "SIGNIFICANT ACCOUNTING POLICIES [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountingStandardsUpdate201602Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingStandardsUpdate201602Member", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "ASU 2016-02 [Member]", "label": "Accounting Standards Update 2016-02 [Member]", "documentation": "Accounting Standards Update 2016-02 Leases (Topic 842)." } } }, "auth_ref": [ "r565" ] }, "us-gaap_AccountsNotesAndLoansReceivableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsNotesAndLoansReceivableLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts, Notes, Loans and Financing Receivable [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_AccountsPayableAndAccruedLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableAndAccruedLiabilitiesMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Expenses and Other Liabilities [Member]", "documentation": "Primary financial statement caption encompassing accounts payable and accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_AccountsPayableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Payable [Member]", "documentation": "Obligations incurred and payable to vendors for goods and services received." } } }, "auth_ref": [ "r17" ] }, "us-gaap_AccountsPayableTradeCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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", "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Accounts payable-trade", "terseLabel": "Accounts Payable", "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": [ "r20", "r21" ] }, "tlfa_AccountsReceivableAndExpectedCreditLossesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "AccountsReceivableAndExpectedCreditLossesAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable And Expected Credit Losses [Abstract]", "terseLabel": "Accounts Receivable and Expected Credit Losses [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Accounts Receivable [Member]", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r720" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Accounts receivable-trade, net of allowance for doubtful accounts of $31 and $56 at December 31, 2023 and December 31, 2022, respectively", "verboseLabel": "Accounts receivable", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r262", "r263" ] }, "us-gaap_AccruedLiabilitiesAndOtherLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesAndOtherLiabilities", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 7.0 }, "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails", "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "TOTAL", "label": "Accrued expenses and other liabilities", "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other." } } }, "auth_ref": [] }, "us-gaap_AccruedLiabilitiesAndOtherLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesAndOtherLiabilitiesAbstract", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued Expenses and Other Liabilities [Abstract]" } } }, "auth_ref": [] }, "tlfa_AccruedVendorPayablesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "AccruedVendorPayablesCurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable to vendor. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Vendor Payables Current", "terseLabel": "Accrued vendor payables" } } }, "auth_ref": [] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Less accumulated depreciation", "negatedLabel": "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": [ "r64", "r174", "r618" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r33", "r34", "r100", "r178", "r614", "r639", "r643" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r3", "r12", "r34", "r526", "r529", "r593", "r634", "r635", "r807", "r808", "r809", "r817", "r818", "r819" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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": [ "r115" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r95", "r770", "r887" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r472", "r473", "r474", "r652", "r817", "r818", "r819", "r868", "r888" ] }, "us-gaap_AdjustmentsForNewAccountingPronouncementsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsForNewAccountingPronouncementsAxis", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Accounting Standards Update [Axis]", "documentation": "Information by amendment to accounting standards." } } }, "auth_ref": [ "r163", "r164", "r165", "r166", "r167", "r210", "r211", "r212", "r213", "r224", "r265", "r266", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r291", "r472", "r473", "r474", "r501", "r502", "r503", "r504", "r514", "r515", "r516", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545", "r546", "r548", "r549", "r550", "r551", "r562", "r563", "r566", "r567", "r568", "r569", "r589", "r590", "r591", "r592", "r593", "r602", "r603", "r604", "r632", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643" ] }, "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "auth_ref": [] }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchase of vested stock for employee payroll tax", "label": "Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation", "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r71", "r72", "r438" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r111" ] }, "us-gaap_AdvertisingCostsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdvertisingCostsPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Advertising", "documentation": "Disclosure of accounting policy for advertising cost." } } }, "auth_ref": [ "r143" ] }, "us-gaap_AdvertisingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdvertisingExpense", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesAdvertisingDetails" ], "lang": { "en-us": { "role": { "label": "Advertising expense", "documentation": "Amount charged to advertising expense for the period, which are expenses incurred with the objective of increasing revenue for a specified brand, product or product line." } } }, "auth_ref": [ "r480" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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": [ "r470", "r479" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Allowance for expected credit losses", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r179", "r264", "r278", "r279", "r280", "r882" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "lang": { "en-us": { "role": { "verboseLabel": "Allowance for doubtful accounts", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r179", "r264", "r278" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of intangible assets (excluding goodwill)", "label": "Amortization of Intangible Assets", "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": [ "r7", "r58", "r61" ] }, "us-gaap_AssetImpairmentChargesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetImpairmentChargesAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesImpairmentOfLonglivedAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Impairment of long-lived assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r133", "r177", "r203", "r246", "r252", "r256", "r267", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r517", "r519", "r547", "r610", "r678", "r770", "r782", "r829", "r830", "r874" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "ASSETS", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r169", "r184", "r203", "r267", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r517", "r519", "r547", "r770", "r829", "r830", "r874" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "lang": { "en-us": { "role": { "label": "CURRENT ASSETS:" } } }, "auth_ref": [] }, "dei_AuditorFirmId": { "xbrltype": "nonemptySequenceNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorFirmId", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Firm ID", "documentation": "PCAOB issued Audit Firm Identifier" } } }, "auth_ref": [ "r786", "r787", "r788" ] }, "dei_AuditorLocation": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorLocation", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Location" } } }, "auth_ref": [ "r786", "r787", "r788" ] }, "dei_AuditorName": { "xbrltype": "internationalNameItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AuditorName", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Auditor Name" } } }, "auth_ref": [ "r786", "r787", "r788" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails", "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r441", "r442", "r443", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r465", "r466", "r467", "r468", "r469" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Axis]", "documentation": "Information by location on balance sheet (statement of financial position)." } } }, "auth_ref": [] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "label": "Balance Sheet Location [Domain]", "documentation": "Location in the balance sheet (statement of financial position)." } } }, "auth_ref": [ "r78", "r79" ] }, "us-gaap_BasisOfPresentationAndSignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BasisOfPresentationAndSignificantAccountingPoliciesTextBlock", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusiness" ], "lang": { "en-us": { "role": { "label": "DESCRIPTION OF BUSINESS", "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": [ "r112" ] }, "us-gaap_BuildingAndBuildingImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingAndBuildingImprovementsMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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": [] }, "us-gaap_BuildingMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BuildingMember", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Building [Member]", "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities." } } }, "auth_ref": [ "r117" ] }, "tlfa_BusinessDescriptionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "BusinessDescriptionAbstract", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "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/2023", "localname": "CA", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/DescriptionOfBusinessDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Canada [Member]", "label": "CANADA" } } }, "auth_ref": [] }, "us-gaap_CanadaRevenueAgencyMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CanadaRevenueAgencyMember", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Canada [Member]", "documentation": "Designated tax department of the government of Canada." } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "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": { "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": [ "r38", "r172", "r736" ] }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r39" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash and cash equivalents, beginning of period", "periodEndLabel": "Cash and cash equivalents, end 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": [ "r38", "r109", "r199" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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 (decrease) 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": [ "r2", "r109" ] }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental disclosures of non-cash activity:" } } }, "auth_ref": [] }, "tlfa_CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "CashPaidForAmountsIncludedInTheMeasurementOfLeaseLiabilitiesAbstract", "presentation": [ "http://tandyleather.com/role/LeasesOperatingLeasesOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Cash Paid for Amounts Included In The Measurement Of Lease Liabilities [Abstract]", "terseLabel": "Cash Paid for Amounts Included in the Measurement of Lease Liabilities [Abstract]" } } }, "auth_ref": [] }, "srt_ChiefExecutiveOfficerMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ChiefExecutiveOfficerMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Chief Executive Officer [Member]", "documentation": "Person with designation of chief executive officer." } } }, "auth_ref": [ "r822" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "localname": "ClassOfTreasuryStockTable", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "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": [ "r67", "r68", "r69", "r70" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "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": "COMMITMENTS AND CONTINGENCIES (Note 8)", "label": "Commitments and Contingencies", "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": [ "r28", "r87", "r612", "r665" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "label": "COMMITMENTS AND CONTINGENCIES [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r120", "r293", "r294", "r721", "r826" ] }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "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": [ "r29" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r773", "r774", "r775", "r777", "r778", "r779", "r780", "r817", "r818", "r868", "r885", "r888" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "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": [ "r94" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "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": [ "r94", "r666" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "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": [ "r94" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "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": [ "r13", "r94", "r666", "r684", "r888", "r889" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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,823,621 and 9,717,525 shares issued at December 31, 2023 and December 31, 2022, respectively; 8,399,245 and 8,293,150 shares outstanding at December 31, 2023 and December 31, 2022, 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": [ "r94", "r613", "r770" ] }, "us-gaap_ComparabilityOfPriorYearFinancialData": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComparabilityOfPriorYearFinancialData", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Correction of an error in previously issued financial statements", "documentation": "Disclosure of accounting policy for reporting any exceptions to the comparability of prior year financial data with data shown for the most recent accounting period." } } }, "auth_ref": [ "r19" ] }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CompensationAndRetirementDisclosureAbstract", "lang": { "en-us": { "role": { "label": "EMPLOYEE BENEFIT AND SAVINGS PLANS [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r77", "r131", "r186", "r188", "r193", "r606", "r622" ] }, "us-gaap_ComprehensiveIncomePolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomePolicyPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Comprehensive income", "label": "Comprehensive Income, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for comprehensive income." } } }, "auth_ref": [] }, "tlfa_ConcentrationRiskAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ConcentrationRiskAbstract", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r46", "r48", "r81", "r82", "r261", "r720" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r46", "r48", "r81", "r82", "r261", "r644", "r720" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "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": [ "r46", "r48", "r81", "r82", "r261", "r720", "r796" ] }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskDisclosureTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRisk" ], "lang": { "en-us": { "role": { "label": "SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK", "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date." } } }, "auth_ref": [ "r113" ] }, "us-gaap_ConcentrationRiskLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskLineItems", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [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": [ "r720" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "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": [ "r46", "r48", "r81", "r82", "r261" ] }, "us-gaap_ConcentrationRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTable", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Concentration Risk [Table]", "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r45", "r46", "r48", "r49", "r81", "r132", "r720" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "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": [ "r46", "r48", "r81", "r82", "r261", "r720" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Principles of consolidation", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r75", "r739" ] }, "tlfa_ContractWithCustomerAccruedLiabilitiesForUnredeemedGiftCards": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ContractWithCustomerAccruedLiabilitiesForUnredeemedGiftCards", "crdr": "credit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of the liability for outstanding gift cards. Retail customers purchase gift cards or gift certificates that can be redeemed at a later date for merchandise or services; those unredeemed represent a liability of the entity because the revenue is being deferred.", "label": "Contract with Customer, Accrued Liabilities For Unredeemed Gift Cards", "terseLabel": "Unearned gift card revenue" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerAssetAccumulatedAllowanceForCreditLoss", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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": [ "r278", "r279", "r280", "r350" ] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiability", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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": [ "r348", "r349", "r361" ] }, "tlfa_ContractWithCustomerLiabilityForGiftCardsIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ContractWithCustomerLiabilityForGiftCardsIssued", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable recorded during the current reporting period, related to the Company's liability for outstanding gift cards. Retail customers purchase gift cards or gift certificates that can be redeemed at a later date for merchandise or services.", "label": "Contract With Customer Liability For Gift Cards Issued", "terseLabel": "Gift cards issued" } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognized from redemption of gift cards", "label": "Contract with Customer, Liability, Revenue Recognized", "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": [ "r362" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r104", "r600" ] }, "us-gaap_CostOfGoodsAndServicesSoldDepreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSoldDepreciation", "crdr": "debit", "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": { "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": [ "r810", "r824" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_CurrentFederalStateAndLocalTaxExpenseBenefitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalStateAndLocalTaxExpenseBenefitAbstract", "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Current provision (benefit) [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentFederalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Federal", "documentation": "Amount of current federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r799", "r815", "r866" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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_CurrentForeignTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentForeignTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Foreign", "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r799", "r815" ] }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total current provision", "label": "Current Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations." } } }, "auth_ref": [ "r130", "r500", "r508", "r815" ] }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CurrentStateAndLocalTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "State", "documentation": "Amount of current state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, current regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r799", "r815", "r866" ] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk [Member]", "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer." } } }, "auth_ref": [ "r47", "r261" ] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "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": [ "r121", "r201", "r308", "r314", "r315", "r316", "r317", "r318", "r319", "r324", "r331", "r332", "r334" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentAxis", "presentation": [ "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r18", "r89", "r90", "r134", "r136", "r206", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r564", "r745", "r746", "r747", "r748", "r749", "r813" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r206", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r333", "r564", "r745", "r746", "r747", "r748", "r749", "r813" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r26", "r206", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r564", "r745", "r746", "r747", "r748", "r749", "r813" ] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentTable", "presentation": [ "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Long-term Debt Instruments [Table]", "documentation": "A table or schedule providing information pertaining to long-term debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r26", "r65", "r66", "r83", "r84", "r85", "r88", "r123", "r124", "r206", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r333", "r564", "r745", "r746", "r747", "r748", "r749", "r813" ] }, "us-gaap_DebtInstrumentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentsAbstract", "presentation": [ "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Debt Instruments [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DeconsolidationGainOrLossAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeconsolidationGainOrLossAmount", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesDeconsolidationOfForeignSubsidiariesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Loss on deconsolidation", "documentation": "Amount of gain (loss) from deconsolidation of subsidiary and derecognition of group of assets constituting transfer of business or nonprofit activity, excluding conveyance of oil and gas mineral rights and transfer of good or service in contract with customer." } } }, "auth_ref": [ "r76" ] }, "tlfa_DeconsolidationOfForeignSubsidiariesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "DeconsolidationOfForeignSubsidiariesAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesDeconsolidationOfForeignSubsidiariesDetails" ], "lang": { "en-us": { "role": { "label": "Deconsolidation of Foreign Subsidiaries [Abstract]", "terseLabel": "Deconsolidation of Foreign Subsidiaries [Abstract]" } } }, "auth_ref": [] }, "tlfa_DeconsolidationOfForeignSubsidiariesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "DeconsolidationOfForeignSubsidiariesPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for deconsolidation of foreign subsidiaries.", "label": "Deconsolidation of Foreign Subsidiaries [Policy Text Block]", "terseLabel": "Deconsolidation of Foreign Subsidiaries" } } }, "auth_ref": [] }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Federal", "label": "Deferred Federal Income Tax Expense (Benefit)", "documentation": "Amount of deferred federal tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred national tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r815", "r865", "r866" ] }, "us-gaap_DeferredFederalStateAndLocalTaxExpenseBenefitAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredFederalStateAndLocalTaxExpenseBenefitAbstract", "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred provision (benefit) [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredForeignIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign", "label": "Deferred Foreign Income Tax Expense (Benefit)", "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r130", "r815", "r865" ] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "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": { "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": [ "r485", "r486" ] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total deferred provision (benefit)", "label": "Deferred Income Tax Expense (Benefit)", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r7", "r130", "r150", "r507", "r508", "r815" ] }, "us-gaap_DeferredIncomeTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilities", "crdr": "credit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total deferred income tax liabilities", "label": "Deferred Tax Liabilities, Gross", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences." } } }, "auth_ref": [ "r91", "r92", "r135", "r494" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Deferred income taxes", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r485", "r486", "r611" ] }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxesAndTaxCredits", "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": "Deferred income taxes", "label": "Deferred Income Taxes and Tax Credits", "documentation": "Amount of deferred income tax expense (benefit) and income tax credits." } } }, "auth_ref": [ "r111" ] }, "us-gaap_DeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenue", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "label": "Credit card payments recorded as deferred revenue", "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r802" ] }, "us-gaap_DeferredStateAndLocalIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredStateAndLocalIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "State", "label": "Deferred State and Local Income Tax Expense (Benefit)", "documentation": "Amount of deferred state and local tax expense (benefit) attributable to income (loss) from continuing operations. Includes, but is not limited to, deferred regional, territorial, and provincial tax expense (benefit) for non-US (United States of America) jurisdiction." } } }, "auth_ref": [ "r815", "r865", "r866" ] }, "tlfa_DeferredTaxAssetsAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "DeferredTaxAssetsAccountsReceivable", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accounts receivable.", "label": "Deferred Tax Assets, Accounts Receivable", "terseLabel": "Accounts receivable" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGross", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total deferred income tax assets", "label": "Deferred Tax Assets, Gross", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r495" ] }, "us-gaap_DeferredTaxAssetsGrossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsGrossAbstract", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred income tax assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxAssetsInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsInventory", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Inventory", "label": "Deferred Tax Assets, Inventory", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsLiabilitiesNet", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Net deferred tax asset (liability)", "label": "Deferred Tax Assets, Net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, without jurisdictional netting." } } }, "auth_ref": [ "r863" ] }, "us-gaap_DeferredTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsNet", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsLiabilitiesNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total deferred income tax assets, net of valuation allowance", "label": "Deferred Tax Assets, Net of Valuation Allowance", "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards." } } }, "auth_ref": [ "r863" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Net operating losses", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsForeign": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwardsForeign", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign tax net operating loss carryovers", "label": "Deferred Tax Assets, Operating Loss Carryforwards, Foreign", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible foreign operating loss carryforwards." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsOperatingLossCarryforwardsStateAndLocal", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "State net operating loss carryovers", "label": "Deferred Tax Assets, Operating Loss Carryforwards, State and Local", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible state and local operating loss carryforwards." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsShareBasedCompensationCost", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Stock-based compensation", "label": "Deferred Tax Assets, Tax Deferred Expense, Compensation and Benefits, Share-Based Compensation Cost", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from share-based compensation." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued expenses", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsDeferredRent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsDeferredRent", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Leases", "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Deferred Rent", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred rent." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReturnsAndAllowances", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Sales returns", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from estimated returns and sales allowances." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsUnrealizedCurrencyLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsUnrealizedCurrencyLosses", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation gain/loss in OCI", "label": "Deferred Tax Assets, Unrealized Currency Losses", "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from unrealized losses on foreign currency transactions." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxAssetsValuationAllowance", "crdr": "credit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredTaxAssetsNet", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: valuation allowance", "label": "Deferred Tax Assets, Valuation Allowance", "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized." } } }, "auth_ref": [ "r496" ] }, "us-gaap_DeferredTaxLiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesAbstract", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Deferred income tax liabilities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DeferredTaxLiabilitiesPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredTaxLiabilitiesPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails": { "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeTaxEffectsOfTemporaryDifferencesImpactingDeferredIncomeTaxAssetsAndLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment depreciation", "label": "Deferred Tax Liabilities, Property, Plant and Equipment", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment." } } }, "auth_ref": [ "r74", "r864" ] }, "us-gaap_DefinedBenefitPlanDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedBenefitPlanDisclosureLineItems", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Defined Benefit Plan Disclosure [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_DefinedContributionPlanCostRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanCostRecognized", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Defined contribution plan, employer match expense", "documentation": "Amount of cost for defined contribution plan." } } }, "auth_ref": [ "r431" ] }, "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Employer discretionary contribution amount", "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanEmployerMatchingContributionPercent", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Employer matching contribution, percentage of eligible earnings contributed by employees", "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Employer matching contribution, percentage of match", "documentation": "Percentage employer matches of the employee's percentage contribution matched." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DefinedContributionPlanTable", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Defined Contribution Plan [Table]", "documentation": "Disclosure of information about defined contribution pension plans or defined contribution other postretirement plans, separately for pension plans and other postretirement benefit plans." } } }, "auth_ref": [ "r431" ] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Depreciation expense", "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation." } } }, "auth_ref": [ "r7", "r63" ] }, "srt_DirectorMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "DirectorMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Employee Director [Member]", "label": "Board of Directors [Member]", "documentation": "Person serving on board of directors." } } }, "auth_ref": [ "r822", "r886" ] }, "us-gaap_DisaggregationOfRevenueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "label": "Disaggregated revenue [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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": [ "r360", "r751", "r752", "r753", "r754", "r755", "r756", "r757" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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": [ "r360", "r751", "r752", "r753", "r754", "r755", "r756", "r757" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesTables" ], "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": [ "r832" ] }, "us-gaap_DisclosureTextBlockSupplementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureTextBlockSupplementAbstract", "lang": { "en-us": { "role": { "label": "BALANCE SHEET COMPONENTS [Abstract]" } } }, "auth_ref": [] }, "tlfa_DiscountsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "DiscountsAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesDiscountsDetails" ], "lang": { "en-us": { "role": { "label": "Discounts [Abstract]", "terseLabel": "Discounts [Abstract]" } } }, "auth_ref": [] }, "dei_DocumentAnnualReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentAnnualReport", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Annual Report", "documentation": "Boolean flag that is true only for a form used as an annual report." } } }, "auth_ref": [ "r786", "r787", "r788" ] }, "dei_DocumentFinStmtErrorCorrectionFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtErrorCorrectionFlag", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Error Correction [Flag]", "documentation": "Indicates whether any of the financial statement period in the filing include a restatement due to error correction." } } }, "auth_ref": [ "r786", "r787", "r788", "r790" ] }, "dei_DocumentFinStmtRestatementRecoveryAnalysisFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFinStmtRestatementRecoveryAnalysisFlag", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Document Financial Statement Restatement Recovery Analysis [Flag]", "documentation": "Indicates whether any of the financial statement periods include restatements that required a recovery analysis of incentive-based compensation received by any of the registrant's executive officers during the relevant recovery period pursuant to \u00a7240.10D-1(b)." } } }, "auth_ref": [ "r786", "r787", "r788", "r790" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "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/2023", "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_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r789" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "localname": "ES", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Spain [Member]", "label": "SPAIN" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (in dollars per share)", "label": "Earnings Per Share, Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r194", "r214", "r215", "r217", "r218", "r220", "r225", "r227", "r241", "r242", "r243", "r244", "r542", "r543", "r607", "r623", "r742" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Diluted (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": [ "r194", "r214", "r215", "r217", "r218", "r220", "r227", "r241", "r242", "r243", "r244", "r542", "r543", "r607", "r623", "r742" ] }, "us-gaap_EarningsPerShareDilutedLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDilutedLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "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": [ "r227", "r232", "r241" ] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Earnings per share", "label": "Earnings Per Share, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r42", "r43" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r554" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Effective rate", "label": "Effective Income Tax Rate Reconciliation, Percent", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r488" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statutory rate - Federal U.S. income tax", "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r205", "r488", "r510" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationChangeInDeferredTaxAssetsValuationAllowance", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "label": "Change in valuation allowance", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to changes in the valuation allowance for deferred tax assets." } } }, "auth_ref": [ "r860", "r867" ] }, "tlfa_EffectiveIncomeTaxRateReconciliationInterestOnUnrecognizedTaxBenefitPercent": { "xbrltype": "percentItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "EffectiveIncomeTaxRateReconciliationInterestOnUnrecognizedTaxBenefitPercent", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to Interest on unrecognized tax benefit.", "label": "Effective Income Tax Rate Reconciliation, Interest on Unrecognized Tax Benefit, Percent", "terseLabel": "Interest on Uncertain Tax Position" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationOtherAdjustments": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationOtherAdjustments", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other, net", "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Percent", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments." } } }, "auth_ref": [ "r860", "r867" ] }, "tlfa_EffectiveIncomeTaxRateReconciliationPermanentDifferencesPercent": { "xbrltype": "percentItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "EffectiveIncomeTaxRateReconciliationPermanentDifferencesPercent", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to permanent book to income tax differences.", "label": "Effective Income Tax Rate Reconciliation, Permanent Differences, Percent", "terseLabel": "Permanent book/tax differences" } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "State and local taxes", "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Percent", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations applicable to state and local income tax expense (benefit), net of federal tax expense (benefit)." } } }, "auth_ref": [ "r860", "r867" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCredits": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationTaxCredits", "calculation": { "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails": { "parentTag": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfEffectiveTaxRateFromStatutoryRateDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Income tax credits", "label": "Effective Income Tax Rate Reconciliation, Tax Credit, Percent", "documentation": "Percentage of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to tax credits. Including, but not limited to, research credit, foreign tax credit, investment tax credit, and other tax credits." } } }, "auth_ref": [ "r860", "r867" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Accrued employee related costs", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r24" ] }, "tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInFourYears", "crdr": "debit", "calculation": { "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails": { "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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", "terseLabel": "2027" } } }, "auth_ref": [] }, "tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInThreeYears", "crdr": "debit", "calculation": { "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails": { "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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": "2026" } } }, "auth_ref": [] }, "tlfa_EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "EmployeeServiceShareBasedCompensationNonVestedAwardsCompensationCostNotYetRecognizedDueInTwoYears", "crdr": "debit", "calculation": { "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails": { "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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": "2025" } } }, "auth_ref": [] }, "tlfa_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedDueInNextTwelveMonths", "crdr": "debit", "calculation": { "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails": { "parentTag": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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": "2024" } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "calculation": { "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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": [ "r471" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "lang": { "en-us": { "role": { "label": "Unrecognized compensation cost period of recognition", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r471" ] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "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/2023", "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/2023", "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/2023", "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": [ "r784" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "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/2023", "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": [ "r784" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "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": [ "r784" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "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": [ "r793" ] }, "dei_EntityPublicFloat": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityPublicFloat", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Public Float", "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter." } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r784" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r784" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r784" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r784" ] }, "dei_EntityVoluntaryFilers": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityVoluntaryFilers", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Voluntary Filers", "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act." } } }, "auth_ref": [] }, "dei_EntityWellKnownSeasonedIssuer": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityWellKnownSeasonedIssuer", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "Entity Well-known Seasoned Issuer", "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A." } } }, "auth_ref": [ "r794" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "label": "STOCKHOLDERS' EQUITY [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityClassOfTreasuryStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityClassOfTreasuryStockLineItems", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "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/2023", "localname": "EquityComponentDomain", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "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": [ "r13", "r165", "r190", "r191", "r192", "r207", "r208", "r209", "r211", "r221", "r223", "r245", "r271", "r277", "r347", "r472", "r473", "r474", "r503", "r504", "r524", "r526", "r527", "r528", "r529", "r531", "r541", "r555", "r556", "r557", "r558", "r559", "r561", "r593", "r634", "r635", "r636", "r652", "r704" ] }, "us-gaap_ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ErrorCorrectionsAndPriorPeriodAdjustmentsRestatementLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Error Corrections and Prior Period Adjustments Restatement [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": [ "r214", "r215", "r216", "r220", "r221", "r222", "r223", "r244" ] }, "tlfa_ExpectedMerchandiseReturns": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ExpectedMerchandiseReturns", "crdr": "credit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents the carrying value as of the balance sheet date of the liability for expected merchandise returns.", "label": "Expected Merchandise Returns", "terseLabel": "Estimated returns" } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersNet", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" ], "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": [] }, "tlfa_FairValueOfFinancialInstrumentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "FairValueOfFinancialInstrumentsAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesFairValueOfFinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "label": "Fair Value of Financial Instruments [Abstract]", "verboseLabel": "Fair value of financial instruments [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FairValueOfFinancialInstrumentsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueOfFinancialInstrumentsPolicy", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r9", "r16" ] }, "tlfa_FiftyPercentContributionMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "FiftyPercentContributionMember", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage employer matches of the employee's percentage contribution matched.", "label": "Fifty Percent Contribution [Member]", "terseLabel": "50% Contribution [Member]" } } }, "auth_ref": [] }, "tlfa_FinanceLeaseCostsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "FinanceLeaseCostsAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Finance Lease Costs [Abstract]", "terseLabel": "Finance [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FinanceLeaseInterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseInterestExpense", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Interest on lease liabilities", "terseLabel": "Remaining finance leases interest expense", "documentation": "Amount of interest expense on finance lease liability." } } }, "auth_ref": [ "r574", "r581", "r769" ] }, "us-gaap_FinanceLeaseInterestPaymentOnLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseInterestPaymentOnLiability", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/LeasesOperatingLeasesOtherInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating cash flows used in finance leases", "label": "Finance Lease, Interest Payment on Liability", "documentation": "Amount of interest paid on finance lease liability." } } }, "auth_ref": [ "r576", "r585" ] }, "us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilitiesPaymentsDueAbstract", "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maturities of Finance Lease Liabilities [Abstract]", "label": "Finance Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FinanceLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiability", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc01": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Present value of lease liabilities", "label": "Finance Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease." } } }, "auth_ref": [ "r572", "r588" ] }, "us-gaap_FinanceLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": "tlfa_LeaseLiabilities", "weight": 1.0, "order": 1.0 }, "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Current portion of finance lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current." } } }, "auth_ref": [ "r572" ] }, "us-gaap_FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Finance Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current finance lease liability." } } }, "auth_ref": [ "r573" ] }, "us-gaap_FinanceLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": "tlfa_LeaseLiabilities", "weight": 1.0, "order": 3.0 }, "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Finance lease liabilities, non-current", "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent." } } }, "auth_ref": [ "r572" ] }, "us-gaap_FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Finance Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes noncurrent finance lease liability." } } }, "auth_ref": [ "r573" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc01": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total lease payments", "label": "Finance Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Finance Lease, Liability, to be Paid, after Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Finance Lease, Liability, to be Paid, Year One", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Finance Lease, Liability, to be Paid, Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Finance Lease, Liability, to be Paid, Year Four", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Finance Lease, Liability, to be Paid, Year Three", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Finance Lease, Liability, to be Paid, Year Two", "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc01": { "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: Interest", "label": "Finance Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease." } } }, "auth_ref": [ "r588" ] }, "us-gaap_FinanceLeasePrincipalPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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", "http://tandyleather.com/role/LeasesOperatingLeasesOtherInformationDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Payment of finance lease obligations", "terseLabel": "Financing cash flows used in finance leases", "label": "Finance Lease, Principal Payments", "documentation": "Amount of cash outflow for principal payment on finance lease." } } }, "auth_ref": [ "r575", "r585" ] }, "us-gaap_FinanceLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": "tlfa_LeaseAssets", "weight": 1.0, "order": 1.0 }, "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Financing lease assets", "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease." } } }, "auth_ref": [ "r571" ] }, "us-gaap_FinanceLeaseRightOfUseAssetAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAssetAmortization", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of finance lease assets", "label": "Finance Lease, Right-of-Use Asset, Amortization", "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease." } } }, "auth_ref": [ "r574", "r581", "r769" ] }, "us-gaap_FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Finance Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes finance lease right-of-use asset." } } }, "auth_ref": [ "r573" ] }, "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance leases", "label": "Finance Lease, Weighted Average Discount Rate, Percent", "documentation": "Weighted average discount rate for finance lease calculated at point in time." } } }, "auth_ref": [ "r587", "r769" ] }, "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finance leases", "label": "Finance Lease, Weighted Average Remaining Lease Term", "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r586", "r769" ] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r175", "r288" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Amortization expense, 2024", "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": [ "r116" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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 fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r116" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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 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": [ "r116" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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 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": [ "r116" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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 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": [ "r116" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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": [ "r286", "r287", "r288", "r289", "r601", "r605" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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": [ "r601" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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": [ "r59", "r60" ] }, "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNetAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Other Intangible Assets [Abstract]" } } }, "auth_ref": [] }, "tlfa_FiveMajorCustomersMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "FiveMajorCustomersMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "Five major customers to the entity.", "label": "Five Major Customers [Member]" } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionGainLossBeforeTaxAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation and transactions [Abstract]", "label": "Gain (Loss), Foreign Currency Transaction, before Tax [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r552" ] }, "tlfa_ForeignCurrencyTranslationAndTransactionsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ForeignCurrencyTranslationAndTransactionsLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Foreign Currency Translation and Transactions [Line Items]" } } }, "auth_ref": [] }, "tlfa_ForeignCurrencyTranslationAndTransactionsTable": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ForeignCurrencyTranslationAndTransactionsTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about foreign currency translation and transactions.", "label": "Foreign Currency Translation and Transactions [Table]" } } }, "auth_ref": [] }, "us-gaap_FurnitureAndFixturesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FurnitureAndFixturesMember", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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_GainLossOnDispositionOfAssets1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnDispositionOfAssets1", "crdr": "credit", "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": { "negatedLabel": "Loss on disposal of assets", "label": "Gain (Loss) on Disposition of Assets", "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee." } } }, "auth_ref": [ "r812" ] }, "tlfa_GiftCardRedemptionPeriod": { "xbrltype": "durationItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "GiftCardRedemptionPeriod", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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/2023", "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": [ "r103", "r203", "r246", "r251", "r255", "r257", "r267", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r547", "r743", "r829" ] }, "dei_IcfrAuditorAttestationFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "IcfrAuditorAttestationFlag", "presentation": [ "http://tandyleather.com/role/DocumentAndEntityInformation" ], "lang": { "en-us": { "role": { "label": "ICFR Auditor Attestation Flag" } } }, "auth_ref": [ "r786", "r787", "r788" ] }, "tlfa_ImpairmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ImpairmentExpenseMember", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing impairment expenses.", "label": "Impairment Expense [Member]", "terseLabel": "Impairment Expense [Member]" } } }, "auth_ref": [] }, "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOfLongLivedAssetsHeldForUse", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesImpairmentOfLonglivedAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment losses", "label": "Impairment, Long-Lived Asset, Held-for-Use", "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale)." } } }, "auth_ref": [ "r7", "r62", "r118" ] }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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", "r119" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income (loss) before income taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic", "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations." } } }, "auth_ref": [ "r204", "r509" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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", "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Income before income taxes", "terseLabel": "TOTAL", "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": [ "r1", "r101", "r138", "r246", "r251", "r255", "r257", "r608", "r620", "r743" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income (loss) before income taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign", "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile." } } }, "auth_ref": [ "r204", "r509" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestmentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestmentsAbstract", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income (loss) before income taxes [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "Condensed Consolidated Statements of Operations and Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r290", "r292", "r689" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r292", "r689" ] }, "us-gaap_IncomeTaxAuthorityNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameAxis", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Axis]", "documentation": "Information by name of taxing authority." } } }, "auth_ref": [ "r11" ] }, "us-gaap_IncomeTaxAuthorityNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameDomain", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Income Tax Authority [Domain]", "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "label": "INCOME TAXES [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://tandyleather.com/role/IncomeTaxes" ], "lang": { "en-us": { "role": { "terseLabel": "INCOME TAXES", "label": "Income Tax Disclosure [Text Block]", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r205", "r481", "r489", "r492", "r498", "r505", "r511", "r512", "r513", "r651" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 }, "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Provision for income taxes", "totalLabel": "Total tax provision (benefit)", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r141", "r151", "r222", "r223", "r249", "r487", "r506", "r624" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r189", "r483", "r484", "r492", "r493", "r497", "r499", "r647" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Income tax paid (refunded) during the period, net", "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes." } } }, "auth_ref": [ "r40" ] }, "us-gaap_IncomeTaxesReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxesReceivable", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 8.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": [ "r86", "r803" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "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": { "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": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "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": { "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": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedLiabilities", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.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": [ "r6" ] }, "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredIncomeTaxes", "crdr": "credit", "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": { "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": [ "r6" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.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": [ "r6" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "verboseLabel": "Changes in operating assets and liabilities:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOperatingLeaseLiability", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 16.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": [ "r797", "r811" ] }, "us-gaap_IncreaseDecreaseInOtherCurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherCurrentAssets", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 17.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": [ "r811" ] }, "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherNoncurrentAssets", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 12.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other assets", "label": "Increase (Decrease) in Other Noncurrent Assets", "documentation": "Amount of increase (decrease) in noncurrent assets classified as other." } } }, "auth_ref": [ "r811" ] }, "us-gaap_IncreaseDecreaseInPrepaidExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidExpense", "crdr": "credit", "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": { "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": [ "r6" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "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_IncrementalCommonSharesAttributableToContingentlyIssuableShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToContingentlyIssuableShares", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares excluded from the diluted EPS calculation (in shares)", "label": "Incremental Common Shares Attributable to Dilutive Effect of Contingently Issuable Shares", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of contingently issuable shares. Contingently issuable shares are those shares that are issuable for little or no cash contingent on certain conditions being met." } } }, "auth_ref": [ "r229", "r230", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r243" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Dilutive effect of service-based restricted stock awards granted (in shares)", "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": [ "r228", "r229", "r231", "r243", "r440" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "auth_ref": [ "r791" ] }, "tlfa_InstituteOfOfficialCreditGuaranteeForSmallAndMediumSizedEnterprisesMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "InstituteOfOfficialCreditGuaranteeForSmallAndMediumSizedEnterprisesMember", "presentation": [ "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" ], "lang": { "en-us": { "role": { "documentation": "A loan provided for by the Spanish government as part of a COVID-19 relief program to facilitate the continuation of employment and to attenuate the economic effects of the COVID-19 virus.", "label": "Institute of Official Credit Guarantee for Small and Medium-sized Enterprises [Member]", "terseLabel": "Institute of Official Credit Guarantee for Small and Medium-sized Enterprises [Member]" } } }, "auth_ref": [] }, "us-gaap_IntangibleAssetsFiniteLivedPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsFiniteLivedPolicy", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r60", "r597", "r598", "r599", "r601", "r740" ] }, "us-gaap_IntellectualPropertyMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntellectualPropertyMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "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": [ "r15" ] }, "us-gaap_InterestExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpenseMember", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Interest Expense [Member]", "documentation": "Primary financial statement caption encompassing interest expense." } } }, "auth_ref": [ "r14" ] }, "us-gaap_InterestIncomeExpenseNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestIncomeExpenseNet", "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": { "negatedLabel": "Interest income", "label": "Interest Income (Expense), Net", "documentation": "The net amount of operating interest income (expense)." } } }, "auth_ref": [ "r140" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Interest paid during the period", "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount." } } }, "auth_ref": [ "r195", "r197", "r198" ] }, "us-gaap_InternalRevenueServiceIRSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InternalRevenueServiceIRSMember", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "United States [Member]", "documentation": "Designated tax department of the United States of America government entitled to levy and collect income taxes from the entity." } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Inventory [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoods", "crdr": "debit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "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": [ "r804" ] }, "tlfa_InventoryMerchandiseExpectedToBeReturned": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "InventoryMerchandiseExpectedToBeReturned", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 7.0 }, "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "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": [ "r181", "r737", "r770" ] }, "us-gaap_InventoryNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNetAbstract", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Inventory on hand [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r142", "r171", "r180", "r281", "r282", "r283", "r596", "r741" ] }, "us-gaap_InventoryWorkInProcessAndRawMaterials": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcessAndRawMaterials", "crdr": "debit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "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": [ "r806" ] }, "tlfa_JPMorganChaseBankNAMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "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_LandMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LandMember", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Land [Member]", "documentation": "Part of earth's surface not covered by water." } } }, "auth_ref": [ "r833" ] }, "tlfa_LeaseAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "LeaseAssets", "crdr": "debit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of lease assets consisting of operating and finance lease as on balance sheet date.", "label": "Lease Assets", "totalLabel": "Total assets" } } }, "auth_ref": [] }, "us-gaap_LeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCost", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Total lease cost", "documentation": "Amount of lease cost recognized by lessee for lease contract." } } }, "auth_ref": [ "r580", "r769" ] }, "us-gaap_LeaseCostAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Lease Cost [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://tandyleather.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "label": "Lease Cost", "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income." } } }, "auth_ref": [ "r871" ] }, "tlfa_LeaseLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "LeaseLiabilities", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of lease liabilities consisting of operating and finance lease as on balance sheet date.", "label": "Lease Liabilities", "totalLabel": "Total lease liabilities" } } }, "auth_ref": [] }, "tlfa_LeaseTermAndDiscountRateAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "LeaseTermAndDiscountRateAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "label": "Lease Term and Discount Rate [Abstract]", "terseLabel": "Lease Term and Discount Rate [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r117" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeasesAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails" ], "lang": { "en-us": { "role": { "label": "LEASES [Abstract]", "terseLabel": "Leases [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LesseeLeaseDescriptionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionLineItems", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [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": [ "r579" ] }, "us-gaap_LesseeLeaseDescriptionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionTable", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails" ], "lang": { "en-us": { "role": { "label": "Lessee, Lease, Description [Table]", "documentation": "Disclosure of information about lessee's leases." } } }, "auth_ref": [ "r579" ] }, "us-gaap_LesseeLeasesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeasesPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r578" ] }, "tlfa_LesseeOperatingLeaseAssetsAndLiabilities": { "xbrltype": "textBlockItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "LesseeOperatingLeaseAssetsAndLiabilities", "presentation": [ "http://tandyleather.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of lessee's operating lease assets and liabilities recognized in the statement of financial position.", "label": "Lessee Operating Lease Assets and Liabilities", "terseLabel": "Operating Lease Assets and Liabilities" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://tandyleather.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Maturity of Lease Liabilities", "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r872" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc01": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total lease payments", "label": "Lessee, Operating Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r588" ] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc01": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: Interest", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r588" ] }, "tlfa_LesseeOperatingLeasesLeaseTermAndDiscountRateTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "LesseeOperatingLeasesLeaseTermAndDiscountRateTableTextBlock", "presentation": [ "http://tandyleather.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of lessee operating leases lease term and discount rate.", "label": "Lessee Operating Leases Lease Term and Discount Rate [Table Text Block]", "terseLabel": "Lease Term and Discount Rate" } } }, "auth_ref": [] }, "tlfa_LesseeOperatingLeasesOtherInformationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "LesseeOperatingLeasesOtherInformationTableTextBlock", "presentation": [ "http://tandyleather.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of other information of operating leases.", "label": "Lessee Operating Leases Other Information [Table Text Block]", "terseLabel": "Operating Leases Other Information" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://tandyleather.com/role/Leases" ], "lang": { "en-us": { "role": { "label": "LEASES", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r570" ] }, "us-gaap_LiabilitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Liabilities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r99", "r137", "r616", "r770", "r814", "r823", "r869" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "LIABILITIES AND STOCKHOLDERS' EQUITY" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r25", "r170", "r203", "r267", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r518", "r519", "r520", "r547", "r770", "r829", "r874", "r875" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "localname": "LiabilityForUncertainTaxPositionsNoncurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.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": [ "r27" ] }, "us-gaap_LineOfCreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r22", "r813" ] }, "us-gaap_LineOfCreditFacilityLenderDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r22", "r813" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r22" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "localname": "MachineryAndEquipmentMember", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MajorCustomersAxis", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "documentation": "Information by name or description of a single external customer or a group of external customers." } } }, "auth_ref": [ "r261", "r753", "r832", "r883", "r884" ] }, "us-gaap_MarketingAndAdvertisingExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketingAndAdvertisingExpenseAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesAdvertisingDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Advertising [Abstract]", "label": "Marketing and Advertising Expense [Abstract]" } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "documentation": "Upper limit of the provided range." } } }, "auth_ref": [ "r295", "r296", "r297", "r298", "r434", "r595", "r631", "r657", "r658", "r709", "r711", "r713", "r714", "r716", "r731", "r732", "r744", "r750", "r766", "r772", "r831", "r876", "r877", "r878", "r879", "r880", "r881" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "documentation": "Lower limit of the provided range." } } }, "auth_ref": [ "r295", "r296", "r297", "r298", "r434", "r595", "r631", "r657", "r658", "r709", "r711", "r713", "r714", "r716", "r731", "r732", "r744", "r750", "r766", "r772", "r831", "r876", "r877", "r878", "r879", "r880", "r881" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "documentation": "Single external customer or group of external customers." } } }, "auth_ref": [ "r261", "r753", "r832", "r883", "r884" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r196" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "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 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": [ "r196" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://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 provided by 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": [ "r109", "r110", "r111" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "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/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows", "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Net Income", "terseLabel": "Net income", "verboseLabel": "Net income", "label": "Net Income (Loss) Attributable to Parent", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r102", "r111", "r139", "r168", "r185", "r187", "r192", "r203", "r210", "r214", "r215", "r217", "r218", "r222", "r223", "r240", "r246", "r251", "r255", "r257", "r267", "r299", "r300", "r301", "r302", "r303", "r304", "r305", "r306", "r307", "r543", "r547", "r621", "r686", "r702", "r703", "r743", "r781", "r829" ] }, "us-gaap_NetIncomeLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Numerator [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLossAvailableToCommonStockholdersBasicAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Computation of Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Recently Adopted Accounting Pronouncements", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://tandyleather.com/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted", "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r792" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://tandyleather.com/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated", "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r792" ] }, "us-gaap_NonUsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonUsMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Foreign Countries [Member]", "documentation": "Countries excluding the United States of America (US)." } } }, "auth_ref": [ "r890", "r891", "r892", "r893" ] }, "tlfa_NoncashOrPartNoncashTransactionsRightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "NoncashOrPartNoncashTransactionsRightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase in right-of-use asset in a noncash (or part noncash) transaction obtained in exchange for operating lease liability.", "label": "Noncash or Part Noncash Transactions, Right-of-Use Asset Obtained in Exchange for Operating Lease Liability", "terseLabel": "Operating lease assets obtained in exchange for lease liabilities, net" } } }, "auth_ref": [] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": { "negatedTotalLabel": "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": [ "r105" ] }, "tlfa_NumberOfClassesOfCustomerDiscounts": { "xbrltype": "integerItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "NumberOfClassesOfCustomerDiscounts", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesDiscountsDetails" ], "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": [] }, "tlfa_NumberOfMajorCustomers": { "xbrltype": "integerItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "NumberOfMajorCustomers", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "Number of major customers of the entity.", "label": "Number of Major Customers", "verboseLabel": "Number of customers accounted more than 0.5% of revenue" } } }, "auth_ref": [] }, "tlfa_NumberOfMajorSuppliers": { "xbrltype": "integerItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "NumberOfMajorSuppliers", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of major suppliers of the entity.", "label": "Number of Major Suppliers", "terseLabel": "Number of suppliers accounted for 55% of inventory purchases" } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfOperatingSegments", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of operating segments", "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": [ "r821" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfReportableSegments", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "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": [ "r821" ] }, "us-gaap_NumberOfStores": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfStores", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of stores", "label": "Number of Stores", "documentation": "Represents the number of stores." } } }, "auth_ref": [] }, "tlfa_NumberOfSuppliers": { "xbrltype": "integerItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "NumberOfSuppliers", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "The number of suppliers of the entity.", "label": "Number of Suppliers", "terseLabel": "Number of suppliers" } } }, "auth_ref": [] }, "tlfa_OneHundredPercentContributionMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "OneHundredPercentContributionMember", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage employer matches of the employee's percentage contribution matched.", "label": "One Hundred Percent Contribution [Member]", "terseLabel": "100% Contribution [Member]" } } }, "auth_ref": [] }, "tlfa_OneMajorSupplierMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "OneMajorSupplierMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "One major supplier to the entity.", "label": "One Major Supplier [Member]", "terseLabel": "One Major Supplier [Member]" } } }, "auth_ref": [] }, "us-gaap_OperatingCostsAndExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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", "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Operating expenses", "terseLabel": "Operating expenses", "label": "Operating Costs and 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_OperatingExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingExpenseMember", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Expenses [Member]", "label": "Operating Expense [Member]", "documentation": "Primary financial statement caption encompassing expenses associated with normal operations." } } }, "auth_ref": [ "r14" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r246", "r251", "r255", "r257", "r743" ] }, "us-gaap_OperatingIncomeLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLossAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "label": "Other income:" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseCost", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating lease cost", "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability." } } }, "auth_ref": [ "r582", "r769" ] }, "tlfa_OperatingLeaseCurrentLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "OperatingLeaseCurrentLiabilityAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Current Liability [Abstract]", "verboseLabel": "Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseImpairmentLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseImpairmentLoss", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease asset impairment expense", "label": "Operating Lease, Impairment Loss", "documentation": "Amount of loss from impairment of right-of-use asset from operating lease." } } }, "auth_ref": [ "r870" ] }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "label": "Maturity of Operating Lease Liabilities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetailsCalc01": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://tandyleather.com/role/LeasesMaturityOfLeaseLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Present value of lease liabilities", "label": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r572" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": "tlfa_LeaseLiabilities", "weight": 1.0, "order": 0.0 }, "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "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": [ "r572" ] }, "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes current operating lease liability." } } }, "auth_ref": [ "r573" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": "tlfa_LeaseLiabilities", "weight": 1.0, "order": 2.0 }, "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "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": [ "r572" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Liability, Noncurrent, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes noncurrent operating lease liability." } } }, "auth_ref": [ "r573" ] }, "tlfa_OperatingLeaseNonCurrentLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "OperatingLeaseNonCurrentLiabilityAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Non-current Liability [Abstract]", "terseLabel": "Noncurrent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/LeasesOperatingLeasesOtherInformationDetails" ], "lang": { "en-us": { "role": { "label": "Operating cash flows used in operating leases", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r577", "r585" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails": { "parentTag": "tlfa_LeaseAssets", "weight": 1.0, "order": 0.0 }, "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Operating lease assets", "label": "Operating lease assets", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r571" ] }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense", "crdr": "debit", "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": { "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": [ "r812" ] }, "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position [Extensible Enumeration]", "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset." } } }, "auth_ref": [ "r573" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating leases", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r587", "r769" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating leases", "label": "Operating Lease, Weighted Average Remaining Lease Term", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r586", "r769" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "DESCRIPTION OF BUSINESS [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsCurrent", "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": "Other current assets", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r183", "r770" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "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": { "label": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r176" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation gain (loss), net", "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": [ "r4" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails" ], "lang": { "en-us": { "role": { "label": "Foreign currency translation loss adjustments net of tax change (benefit)", "documentation": "Amount of tax expense (benefit), after 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": [ "r4", "r5", "r553", "r560" ] }, "tlfa_OtherCountriesMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "OtherCountriesMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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/2023", "localname": "OtherInventoryInTransit", "crdr": "debit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "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": [ "r805" ] }, "us-gaap_OtherLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "label": "Other Liabilities [Member]", "documentation": "Primary financial statement caption encompassing other liabilities." } } }, "auth_ref": [ "r78", "r80" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Other non-current liabilities", "label": "Other Liabilities, Noncurrent", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r27" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome": { "parentTag": "us-gaap_NonoperatingIncomeExpense", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome" ], "lang": { "en-us": { "role": { "negatedLabel": "Other, net", "label": "Other Nonoperating Income (Expense)", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r106" ] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r36" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r108" ] }, "us-gaap_PensionAndOtherPostretirementBenefitExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitExpenseAbstract", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Pension and Other Postretirement Benefits Cost [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlans" ], "lang": { "en-us": { "role": { "label": "EMPLOYEE BENEFIT AND SAVINGS PLANS", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r363", "r386", "r388", "r394", "r411", "r413", "r414", "r415", "r416", "r417", "r429", "r430", "r431", "r758" ] }, "tlfa_PercentageOfCommonStockOutstanding": { "xbrltype": "percentItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "PercentageOfCommonStockOutstanding", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "documentation": "Percentage of outstanding common stock in prior to the repurchase.", "label": "Percentage of Common Stock Outstanding", "terseLabel": "Percentage of outstanding common stock" } } }, "auth_ref": [] }, "tlfa_PerformanceBasedRestrictedStockUnitsRSUsMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "PerformanceBasedRestrictedStockUnitsRSUsMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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/2023", "localname": "PlanNameAxis", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r834", "r835", "r836", "r837", "r838", "r839", "r840", "r841", "r842", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r834", "r835", "r836", "r837", "r838", "r839", "r840", "r841", "r842", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859" ] }, "us-gaap_PrepaidExpenseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseCurrent", "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": "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": [ "r182", "r284", "r285", "r738" ] }, "us-gaap_PriorPeriodAdjustmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PriorPeriodAdjustmentAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Prior Period Adjustments [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromIssuanceOfLongTermDebt", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/NotesPayableAndLongtermDebtDetails" ], "lang": { "en-us": { "role": { "label": "Proceeds from long-term debt", "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer." } } }, "auth_ref": [ "r35", "r648" ] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r35", "r813" ] }, "us-gaap_ProceedsFromSaleOfProductiveAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleOfProductiveAssets", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "verboseLabel": "Proceeds from sales of assets", "label": "Proceeds from Sale of Productive Assets", "documentation": "The cash inflow from the sale of property, plant and equipment (capital expenditures), software, and other intangible assets." } } }, "auth_ref": [ "r107" ] }, "us-gaap_ProductInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductInformationLineItems", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "label": "Product 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": [] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]", "documentation": "Information by product and service, or group of similar products and similar services." } } }, "auth_ref": [ "r258", "r600", "r625", "r626", "r627", "r628", "r629", "r630", "r734", "r751", "r771", "r798", "r827", "r828", "r832", "r883" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]", "documentation": "Product or service, or a group of similar products or similar services." } } }, "auth_ref": [ "r258", "r600", "r625", "r626", "r627", "r628", "r629", "r630", "r734", "r751", "r771", "r798", "r827", "r828", "r832", "r883" ] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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": [ "r8" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "label": "Property and equipment, at cost", "terseLabel": "Property and equipment, gross", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r117", "r173", "r619" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "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": [ "r8", "r609", "r619", "r770" ] }, "us-gaap_PropertyPlantAndEquipmentNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNetAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment, net of accumulated depreciation [Abstract]", "label": "Property, Plant and Equipment, Net [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNetByTypeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNetByTypeAbstract", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails" ], "lang": { "en-us": { "role": { "label": "Property and Equipment [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "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": [ "r8", "r146", "r149", "r617" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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": [ "r117" ] }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentUsefulLife", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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/2023", "localname": "RangeAxis", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "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": [ "r295", "r296", "r297", "r298", "r386", "r434", "r466", "r467", "r468", "r594", "r595", "r631", "r657", "r658", "r709", "r711", "r713", "r714", "r716", "r731", "r732", "r744", "r750", "r766", "r772", "r775", "r825", "r831", "r877", "r878", "r879", "r880", "r881" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesForeignCurrencyTranslationAndTransactionsDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesLeasesDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "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": [ "r295", "r296", "r297", "r298", "r386", "r434", "r466", "r467", "r468", "r594", "r595", "r631", "r657", "r658", "r709", "r711", "r713", "r714", "r716", "r731", "r732", "r744", "r750", "r766", "r772", "r775", "r825", "r831", "r877", "r878", "r879", "r880", "r881" ] }, "us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable and expected credit losses", "label": "Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for determining the allowance for doubtful accounts for trade and other accounts receivable balances, and when impairments, charge-offs or recoveries are recognized." } } }, "auth_ref": [ "r56" ] }, "us-gaap_ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReconciliationOfUnrecognizedTaxBenefitsExcludingAmountsPertainingToExaminedTaxReturnsRollForward", "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails" ], "lang": { "en-us": { "role": { "label": "Reconciliation of Uncertain Tax Positions (\"UTP\") [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_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Payments on long-term debt", "label": "Repayments of Long-Term Debt", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r37", "r649" ] }, "srt_RestatementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementAxis", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Revision of Prior Period [Axis]", "documentation": "Information by adjustment to previously issued financial statements. Includes, but is not limited to, adjustment for retrospective application of amendment to accounting standards, other change in accounting principle, correction of error, and other revision." } } }, "auth_ref": [ "r166", "r207", "r208", "r209", "r210", "r211", "r214", "r215", "r216", "r217", "r219", "r220", "r221", "r222", "r223", "r224", "r244", "r272", "r273", "r504", "r537", "r541", "r542", "r543", "r569", "r592", "r593", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r645" ] }, "srt_RestatementDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RestatementDomain", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Revision of Prior Period [Domain]", "documentation": "Adjustment to previously issued financial statements. Includes, but is not limited to, adjustment for retrospective application of amendment to accounting standards, other change in accounting principle, correction of error, and other revision." } } }, "auth_ref": [ "r166", "r207", "r208", "r209", "r210", "r211", "r214", "r215", "r216", "r217", "r219", "r220", "r221", "r222", "r223", "r224", "r244", "r272", "r273", "r504", "r537", "r541", "r542", "r543", "r569", "r592", "r593", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r645" ] }, "tlfa_RestrictedStockAndRestrictedStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "RestrictedStockAndRestrictedStockUnitsMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails", "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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]", "verboseLabel": "Restricted Stock and RSU [Member]" } } }, "auth_ref": [] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "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": [ "r42" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Restricted Stock Units [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/2023", "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": [ "r96", "r125", "r615", "r638", "r643", "r650", "r667", "r770" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r165", "r207", "r208", "r209", "r211", "r221", "r223", "r271", "r277", "r472", "r473", "r474", "r503", "r504", "r524", "r527", "r528", "r531", "r541", "r634", "r636", "r652", "r888" ] }, "us-gaap_RetirementPlanTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetirementPlanTypeAxis", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Retirement Plan Type [Axis]", "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement." } } }, "auth_ref": [ "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r412", "r415", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r431", "r432", "r433", "r435", "r758", "r759", "r760", "r761", "r762", "r763", "r764", "r765" ] }, "us-gaap_RetirementPlanTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetirementPlanTypeDomain", "presentation": [ "http://tandyleather.com/role/EmployeeBenefitAndSavingsPlansDetails" ], "lang": { "en-us": { "role": { "label": "Retirement Plan Type [Domain]", "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement." } } }, "auth_ref": [ "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r412", "r415", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427", "r428", "r431", "r432", "r433", "r435", "r758", "r759", "r760", "r761", "r762", "r763", "r764", "r765" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognition [Abstract]", "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/ConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails" ], "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": [ "r247", "r248", "r250", "r253", "r254", "r258", "r259", "r261", "r359", "r360", "r600" ] }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Revenue recognition", "documentation": "Disclosure of accounting policy for revenue from contract with customer." } } }, "auth_ref": [ "r152", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r733" ] }, "tlfa_RevenueRecognitionDiscountsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "RevenueRecognitionDiscountsPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for sales discounts.", "label": "Revenue Recognition, Discounts [Policy Text Block]", "terseLabel": "Discounts" } } }, "auth_ref": [] }, "srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RevisionOfPriorPeriodErrorCorrectionAdjustmentMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Prior Period Adjustment [Member]", "documentation": "Cumulative increase (decrease) to previously issued financial statements for correction of error." } } }, "auth_ref": [ "r214", "r215", "r216", "r220", "r221", "r222", "r223" ] }, "us-gaap_RisksAndUncertaintiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RisksAndUncertaintiesAbstract", "lang": { "en-us": { "role": { "label": "SIGNIFICANT BUSINESS CONCENTRATIONS AND RISK [Abstract]" } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://tandyleather.com/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Adopted", "label": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r792" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://tandyleather.com/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Terminated", "label": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r792" ] }, "tlfa_SalesAndPayrollTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "SalesAndPayrollTaxesPayable", "crdr": "credit", "calculation": { "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesAndOtherLiabilities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsShorttermLiabilitiesDetails" ], "lang": { "en-us": { "role": { "documentation": "Represents to the carrying amount of sales and payroll taxes payable as of the balance sheet date.", "label": "Sales and Payroll Taxes Payable", "terseLabel": "Sales and payroll taxes payable" } } }, "auth_ref": [] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SalesRevenueNetMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Sales Revenue [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": [ "r261", "r795" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesAccountsReceivableAndExpectedCreditLossesDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "documentation": "Schedule itemizing specific types of trade accounts and notes receivable, and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r31" ] }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "presentation": [ "http://tandyleather.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Provision for Income Taxes", "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years." } } }, "auth_ref": [ "r129" ] }, "srt_ScheduleOfCondensedBalanceSheetTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ScheduleOfCondensedBalanceSheetTableTextBlock", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsTables" ], "lang": { "en-us": { "role": { "label": "Inventory, Property and Equipment and Short-term Liabilities", "documentation": "Tabular disclosure of condensed balance sheet, including, but not limited to, balance sheets of consolidated entities and consolidation eliminations." } } }, "auth_ref": [ "r800", "r816" ] }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "presentation": [ "http://tandyleather.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Income Tax Effects of Temporary Differences Impacting Deferred Income Tax Assets and Liabilities", "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets." } } }, "auth_ref": [ "r128" ] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesTables" ], "lang": { "en-us": { "role": { "label": "Computation of Basic and Diluted Earnings Per Share", "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations." } } }, "auth_ref": [ "r820" ] }, "us-gaap_ScheduleOfEarningsPerShareDilutedByCommonClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareDilutedByCommonClassTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Table]", "documentation": "Complete disclosure pertaining to an entity's diluted earnings per share." } } }, "auth_ref": [ "r41", "r44", "r227", "r232", "r241" ] }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "presentation": [ "http://tandyleather.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Reconciliation of Effective Tax Rate from Statutory Rate", "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations." } } }, "auth_ref": [ "r127" ] }, "us-gaap_ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentRestatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfErrorCorrectionsAndPriorPeriodAdjustmentRestatementTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesErrorCorrectionDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Error Corrections and Prior Period Adjustment Restatement [Table]", "documentation": "Schedule of prior period adjustments to correct an error in previously issued financial statements. The disclosure may include, but is not limited to: (1) the effect of the correction on each financial statement line item and any per-share amounts affected for each prior period presented (2) the cumulative effect of the change on retained earnings or other appropriate components of equity or net assets in the statement of financial position, as of the beginning of the earliest period presented, and (3) the effect of the prior period adjustment (both gross and net of applicable income tax) on the net income of each prior period presented in the entity's annual report for the year in which the adjustments are made. This table can be used to disclose the amounts as previously reported and the effect of the correction or other adjustment on per line item or per share amount basis. This table uses as its line items financial statement line items that are affected by prior period adjustments." } } }, "auth_ref": [ "r214", "r215", "r216", "r220", "r221", "r222", "r223", "r244" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesOtherIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r59", "r60", "r601" ] }, "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "presentation": [ "http://tandyleather.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Income Before Income Taxes", "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions." } } }, "auth_ref": [ "r815" ] }, "us-gaap_ScheduleOfProductInformationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfProductInformationTable", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Product Information [Table]", "documentation": "Schedule detailing quantitative information concerning products or product lines by product or product line." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "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": [ "r8" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r53", "r54", "r55", "r57" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails", "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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": [ "r437", "r439", "r441", "r442", "r443", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r465", "r466", "r467", "r468", "r469" ] }, "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "presentation": [ "http://tandyleather.com/role/StockholdersEquityTables" ], "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/2023", "localname": "ScheduleOfUnrecognizedCompensationCostNonvestedAwardsTableTextBlock", "presentation": [ "http://tandyleather.com/role/StockholdersEquityTables" ], "lang": { "en-us": { "role": { "label": "Non-vested, Service-based Stock 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": [ "r126" ] }, "us-gaap_ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfUnrecognizedTaxBenefitsRollForwardTableTextBlock", "presentation": [ "http://tandyleather.com/role/IncomeTaxesTables" ], "lang": { "en-us": { "role": { "label": "Reconciliation of Uncertain Tax Positions", "documentation": "Tabular disclosure of the change in unrecognized tax benefits." } } }, "auth_ref": [ "r768", "r862" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r783" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r785" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/DescriptionOfBusinessDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]", "documentation": "Geographical area." } } }, "auth_ref": [ "r153", "r154", "r155", "r156", "r157", "r158", "r159", "r160", "r161", "r259", "r260", "r654", "r655", "r656", "r710", "r712", "r715", "r717", "r722", "r723", "r724", "r725", "r726", "r727", "r728", "r729", "r730", "r735", "r752", "r775", "r832", "r883" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://tandyleather.com/role/DescriptionOfBusinessDetails" ], "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/2023", "localname": "SellingGeneralAndAdministrativeExpensesPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Operating expense", "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": [ "r10" ] }, "tlfa_ServicedBasedRestrictedStockUnitsRSUsMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ServicedBasedRestrictedStockUnitsRSUsMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "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": "Serviced Based Restricted Stock Units [Member]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensation", "crdr": "debit", "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": { "label": "Stock-based compensation", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ShareBasedCompensationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationAbstract", "presentation": [ "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "lang": { "en-us": { "role": { "label": "Share-based Compensation Expense [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Vesting period from grant date", "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": [ "r767" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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": [ "r458" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "lang": { "en-us": { "role": { "label": "Forfeited (in dollars per share)", "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": [ "r458" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Number of restricted stock units granted (in shares)", "label": "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": [ "r456" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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": [ "r456" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "lang": { "en-us": { "role": { "periodEndLabel": "Balance (in shares)", "periodStartLabel": "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": [ "r453", "r454" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance (in dollars per share)", "periodEndLabel": "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": [ "r453", "r454" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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": [ "r457" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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": [ "r457" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails", "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "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": [ "r437", "r439", "r441", "r442", "r443", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r465", "r466", "r467", "r468", "r469" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails", "http://tandyleather.com/role/StockholdersEquitySummaryOfActivityForRestrictedStockAndRsuAwardsDetails" ], "lang": { "en-us": { "role": { "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r441", "r442", "r443", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r465", "r466", "r467", "r468", "r469" ] }, "us-gaap_ShareBasedCompensationAwardTrancheOneMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationAwardTrancheOneMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tranche One [Member]", "label": "Share-Based Payment Arrangement, Tranche One [Member]", "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationAwardTrancheTwoMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tranche Two [Member]", "label": "Share-Based Payment Arrangement, Tranche Two [Member]", "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r436", "r444", "r463", "r464", "r465", "r466", "r469", "r475", "r476", "r477", "r478" ] }, "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionBySupplierAxis", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Supplier [Axis]", "documentation": "Information by supplier." } } }, "auth_ref": [] }, "us-gaap_ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedGoodsAndNonemployeeServicesTransactionSupplierDomain", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Supplier [Domain]", "documentation": "Specific identification or general nature of (for example, a construction contractor, a consulting firm) the party from whom the goods or services were or are to be received." } } }, "auth_ref": [] }, "us-gaap_ShareBasedPaymentArrangementEmployeeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedPaymentArrangementEmployeeMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "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": [ "r439", "r441", "r442", "r443", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r465", "r466", "r467", "r468", "r469" ] }, "us-gaap_SharePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharePrice", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Purchase price per share (in dollars per share)", "documentation": "Price of a single share of a number of saleable stocks of a company." } } }, "auth_ref": [] }, "us-gaap_ShareRepurchaseProgramAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareRepurchaseProgramAxis", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Share Repurchase Program [Axis]", "documentation": "Information by share repurchase program." } } }, "auth_ref": [] }, "us-gaap_ShareRepurchaseProgramDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareRepurchaseProgramDomain", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Share Repurchase Program [Domain]", "documentation": "Name of the share repurchase program." } } }, "auth_ref": [] }, "tlfa_ShareRepurchaseProgramMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ShareRepurchaseProgramMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "documentation": "Name of the share repurchase program.", "label": "Share Repurchase Program [Member]", "terseLabel": "Share Repurchase Program [Member]" } } }, "auth_ref": [] }, "tlfa_SharebasedCompensationArrangementBySharebasedPaymentAwardMinimumOperatingIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardMinimumOperatingIncome", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "documentation": "Minimum amount of operating income to meet the performance condition.", "label": "tlf_SharebasedCompensationArrangementBySharebasedPaymentAwardMinimumOperatingIncome", "terseLabel": "Minimum amount of operating income, award vesting condition" } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance (in shares)", "periodEndLabel": "Balance (in shares)", "label": "Shares, Outstanding", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchase of vested stock for employee payroll tax (in shares)", "label": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation", "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "tlfa_ShippingAndHandlingCostsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ShippingAndHandlingCostsAbstract", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "label": "Shipping and handling costs [Abstract]", "terseLabel": "Shipping and handling costs [Abstract]" } } }, "auth_ref": [] }, "tlfa_ShippingAndHandlingCostsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "ShippingAndHandlingCostsPolicyTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the classification of shipping and handling costs, including whether the costs are included in cost of sales or included in other income statement accounts. If shipping and handling fees are significant and are not included in cost of sales, disclosure includes both the amounts of such costs and the line item on the income statement which includes such costs.", "label": "Shipping and Handling Costs [Policy Text Block]", "terseLabel": "Shipping and handling costs" } } }, "auth_ref": [] }, "us-gaap_ShippingAndHandlingMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShippingAndHandlingMember", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesShippingAndHandlingCostsDetails" ], "lang": { "en-us": { "role": { "label": "Shipping and Handling [Member]", "documentation": "Packing and transport of product." } } }, "auth_ref": [ "r833" ] }, "us-gaap_ShortTermLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermLeaseCost", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Short-term lease cost", "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less." } } }, "auth_ref": [ "r583", "r769" ] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "label": "SIGNIFICANT ACCOUNTING POLICIES", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r112", "r200" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r13", "r30", "r165", "r190", "r191", "r192", "r207", "r208", "r209", "r211", "r221", "r223", "r245", "r271", "r277", "r347", "r472", "r473", "r474", "r503", "r504", "r524", "r526", "r527", "r528", "r529", "r531", "r541", "r555", "r556", "r557", "r558", "r559", "r561", "r593", "r634", "r635", "r636", "r652", "r704" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/DescriptionOfBusinessDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]", "documentation": "Information by geographical components." } } }, "auth_ref": [ "r153", "r162", "r259", "r260", "r654", "r655", "r656", "r710", "r712", "r715", "r717", "r719", "r722", "r723", "r724", "r725", "r726", "r727", "r728", "r729", "r730", "r735", "r752", "r775", "r832", "r883" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "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": [ "r207", "r208", "r209", "r245", "r600", "r646", "r653", "r659", "r660", "r661", "r662", "r663", "r664", "r666", "r669", "r670", "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r679", "r680", "r681", "r682", "r683", "r685", "r687", "r688", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r701", "r704", "r776" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Condensed Consolidated Statements of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "Condensed Consolidated Balance Sheets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "Condensed Consolidated Statements of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r207", "r208", "r209", "r245", "r600", "r646", "r653", "r659", "r660", "r661", "r662", "r663", "r664", "r666", "r669", "r670", "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r679", "r680", "r681", "r682", "r683", "r685", "r687", "r688", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r701", "r704", "r776" ] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/StockholdersEquityNonvestedServicebasedAwardsDetails" ], "lang": { "en-us": { "role": { "label": "Issuance of restricted stock (in shares)", "terseLabel": "Number of shares issued from vesting of restricted stock (in shares)", "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards." } } }, "auth_ref": [ "r13", "r125" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Issuance of restricted stock", "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period." } } }, "auth_ref": [ "r13", "r93", "r94", "r125" ] }, "us-gaap_StockRepurchaseProgramAuthorizedAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchaseProgramAuthorizedAmount1", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Repurchase of common stock shares", "documentation": "Amount of stock repurchase plan authorized." } } }, "auth_ref": [] }, "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "label": "Remaining repurchase of common stock", "documentation": "Amount remaining of a stock repurchase plan authorized." } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedAndRetiredDuringPeriodShares", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock (in shares)", "label": "Repurchase of common stock (in shares)", "documentation": "Number of shares that have been repurchased and retired during the period." } } }, "auth_ref": [ "r13", "r93", "r94", "r125" ] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedAndRetiredDuringPeriodValue", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock", "label": "Purchase price", "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital)." } } }, "auth_ref": [ "r13", "r93", "r94", "r125" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity", "http://tandyleather.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance", "periodEndLabel": "Balance", "totalLabel": "Total stockholders' equity", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r94", "r97", "r98", "r114", "r668", "r684", "r705", "r706", "r770", "r782", "r814", "r823", "r869", "r888" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheets", "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "lang": { "en-us": { "role": { "label": "STOCKHOLDERS' EQUITY:" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteAbstract", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails", "http://tandyleather.com/role/StockholdersEquityShareRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Stock Plan [Abstract]", "label": "Stockholders' Equity Note [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://tandyleather.com/role/StockholdersEquity" ], "lang": { "en-us": { "role": { "label": "STOCKHOLDERS' EQUITY", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r122", "r202", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r532", "r707", "r708", "r718" ] }, "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalBalanceSheetDisclosuresTextBlock", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponents" ], "lang": { "en-us": { "role": { "label": "BALANCE SHEET COMPONENTS", "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity." } } }, "auth_ref": [ "r801" ] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfCashFlows" ], "lang": { "en-us": { "role": { "label": "Supplemental disclosures of cash flow information:" } } }, "auth_ref": [] }, "us-gaap_SupplierConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplierConcentrationRiskMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "label": "Supplier Concentration Risk [Member]", "documentation": "Reflects the percentage that purchases in the period from one or more significant suppliers is to cost of goods or services, as defined by the entity, such as total cost of sales or services, product line cost of sales or services, segment cost of sales or services. Risk is the materially adverse effects of loss of a material supplier or a supplier of critically needed goods or services." } } }, "auth_ref": [ "r47" ] }, "us-gaap_TaxAuthoritySpainMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxAuthoritySpainMember", "presentation": [ "http://tandyleather.com/role/IncomeTaxesIncomeBeforeIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "label": "Spain [Member]", "documentation": "Designated tax department of the government of Spain." } } }, "auth_ref": [] }, "us-gaap_TaxesPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TaxesPayableCurrent", "crdr": "credit", "calculation": { "http://tandyleather.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 6.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": [ "r23" ] }, "tlfa_TenMajorSuppliersMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "TenMajorSuppliersMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "Ten major suppliers to the entity.", "label": "Ten Major Suppliers [Member]" } } }, "auth_ref": [] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualAxis", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]", "documentation": "Information by title of individual or nature of relationship to individual or group of individuals." } } }, "auth_ref": [ "r822", "r873" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails", "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]", "documentation": "Title of individual, or nature of relationship to individual or group of individuals." } } }, "auth_ref": [] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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/2023", "localname": "TreasuryStockCommonMember", "presentation": [ "http://tandyleather.com/role/CondensedConsolidatedStatementsOfStockholdersEquity" ], "lang": { "en-us": { "role": { "label": "Treasury Stock [Member]", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r67" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockCommonShares", "presentation": [ "http://tandyleather.com/role/ConsolidatedBalanceSheetsParentheticals" ], "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": [ "r67" ] }, "us-gaap_TreasuryStockCommonValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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" ], "lang": { "en-us": { "role": { "negatedLabel": "Treasury stock at cost (1,424,376 shares at December 31, 2023 and December 31, 2022)", "label": "Treasury Stock, Common, Value", "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r32", "r67", "r70" ] }, "tlfa_TwoMajorCustomersMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "TwoMajorCustomersMember", "presentation": [ "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "documentation": "Two major customers to the entity.", "label": "Two Major Customers [Member]" } } }, "auth_ref": [] }, "tlfa_TwoThousandAndThirteenRestrictedStockPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "TwoThousandAndThirteenRestrictedStockPlanMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "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/20231231", "localname": "TwoThousandAndTwentyThreeRestrictedStockPlanMember", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "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": [] }, "us-gaap_TypeOfAdoptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TypeOfAdoptionMember", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Accounting Standards Update [Domain]", "documentation": "Amendment to accounting standards." } } }, "auth_ref": [ "r163", "r164", "r165", "r166", "r167", "r210", "r211", "r212", "r213", "r224", "r265", "r266", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r291", "r472", "r473", "r474", "r501", "r502", "r503", "r504", "r514", "r515", "r516", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r541", "r542", "r543", "r544", "r545", "r546", "r548", "r549", "r550", "r551", "r562", "r563", "r566", "r567", "r568", "r569", "r589", "r590", "r591", "r592", "r593", "r602", "r603", "r604", "r632", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "US", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/DescriptionOfBusinessDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesRevenueRecognitionDetails", "http://tandyleather.com/role/SignificantBusinessConcentrationsAndRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "United States [Member]", "label": "UNITED STATES" } } }, "auth_ref": [] }, "us-gaap_UnrecognizedTaxBenefits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefits", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails" ], "lang": { "en-us": { "role": { "periodEndLabel": "UTP at end of year", "periodStartLabel": "UTP at beginning of the year", "label": "Unrecognized Tax Benefits", "documentation": "Amount of unrecognized tax benefits." } } }, "auth_ref": [ "r482", "r490" ] }, "us-gaap_UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsDecreasesResultingFromCurrentPeriodTaxPositions", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Gross decrease to tax positions in current period", "label": "Unrecognized Tax Benefits, Decrease Resulting from Current Period Tax Positions", "documentation": "Amount of decrease in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return." } } }, "auth_ref": [ "r73" ] }, "us-gaap_UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsIncreasesResultingFromCurrentPeriodTaxPositions", "crdr": "credit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross increase to tax positions in current period", "label": "Unrecognized Tax Benefits, Increase Resulting from Current Period Tax Positions", "documentation": "Amount of increase in unrecognized tax benefits resulting from tax positions that have been or will be taken in current period tax return." } } }, "auth_ref": [ "r491" ] }, "tlfa_UnrecognizedTaxBenefitsInterestOnIncomeAndForeignIncomeTaxesExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "UnrecognizedTaxBenefitsInterestOnIncomeAndForeignIncomeTaxesExpense", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/IncomeTaxesReconciliationOfUncertainTaxPositionsDetails" ], "lang": { "en-us": { "role": { "documentation": "Amount of interest expense for an underpayment of income taxes including foreign income taxes.", "label": "Unrecognized Tax Benefits, Interest on Income and Foreign Income Taxes Expense", "verboseLabel": "Interest expense" } } }, "auth_ref": [] }, "us-gaap_UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsInterestOnIncomeTaxesExpense", "crdr": "debit", "calculation": { "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails": { "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://tandyleather.com/role/IncomeTaxesProvisionForIncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Related to UTP", "label": "Unrecognized Tax Benefits, Interest on Income Taxes Expense", "documentation": "Amount of interest expense for an underpayment of income taxes." } } }, "auth_ref": [ "r861" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UseOfEstimates", "presentation": [ "http://tandyleather.com/role/SignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "label": "Management estimates and reporting", "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles." } } }, "auth_ref": [ "r50", "r51", "r52", "r144", "r145", "r147", "r148" ] }, "us-gaap_VariableLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VariableLeaseCost", "crdr": "debit", "presentation": [ "http://tandyleather.com/role/LeasesLeaseAssetsLiabilitiesAndLeaseCostDetails" ], "lang": { "en-us": { "role": { "label": "Variable lease cost", "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases." } } }, "auth_ref": [ "r584", "r769" ] }, "us-gaap_VehiclesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VehiclesMember", "presentation": [ "http://tandyleather.com/role/BalanceSheetComponentsInventoryPropertyAndEquipmentDetails", "http://tandyleather.com/role/SignificantAccountingPoliciesPropertyAndEquipmentNetOfAccumulatedDepreciationDetails" ], "lang": { "en-us": { "role": { "label": "Vehicles [Member]", "documentation": "Equipment used primarily for road transportation." } } }, "auth_ref": [] }, "us-gaap_VestingAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VestingAxis", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Vesting [Axis]", "documentation": "Information by vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [ "r834", "r835", "r836", "r837", "r838", "r839", "r840", "r841", "r842", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859" ] }, "us-gaap_VestingDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "VestingDomain", "presentation": [ "http://tandyleather.com/role/StockholdersEquity2013And2023RestrictedStockPlansDetails" ], "lang": { "en-us": { "role": { "label": "Vesting [Domain]", "documentation": "Vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [ "r834", "r835", "r836", "r837", "r838", "r839", "r840", "r841", "r842", "r843", "r844", "r845", "r846", "r847", "r848", "r849", "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859" ] }, "tlfa_WeightedAverageDiscountRateAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "WeightedAverageDiscountRateAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "label": "Weighted-Average Discount Rate [Abstract]", "terseLabel": "Weighted-Average Discount Rate [Abstract]" } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Diluted (in shares)", "verboseLabel": "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": [ "r226", "r243" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "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/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://tandyleather.com/role/ConsolidatedStatementsOfOperationsAndComprehensiveIncome", "http://tandyleather.com/role/SignificantAccountingPoliciesEarningsPerShareDetails" ], "lang": { "en-us": { "role": { "label": "Basic (in shares)", "verboseLabel": "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": [ "r225", "r243" ] }, "tlfa_WeightedAverageRemainingLeaseTermAbstract": { "xbrltype": "stringItemType", "nsuri": "http://tandyleather.com/20231231", "localname": "WeightedAverageRemainingLeaseTermAbstract", "presentation": [ "http://tandyleather.com/role/LeasesLeaseTermAndDiscountRateDetails" ], "lang": { "en-us": { "role": { "label": "Weighted-Average Remaining Lease Term [Abstract]", "terseLabel": "Weighted-Average Remaining Lease Term (Years) [Abstract]" } } }, "auth_ref": [] } } } }, "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": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r3": { "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" }, "r4": { "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" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12" }, "r6": { "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" }, "r7": { "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" }, "r8": { "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" }, "r9": { "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" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "35", "Topic": "720", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r12": { "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" }, "r13": { "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" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4D" }, "r15": { "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" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "60", "Paragraph": "1", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482053/820-10-60-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(19)", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r18": { "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" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "205", "SubTopic": "10", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483478/205-10-45-3" }, "r20": { "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" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19,20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.3,4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.30)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r33": { "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" }, "r34": { "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" }, "r35": { "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" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r38": { "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" }, "r39": { "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" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r41": { "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" }, "r42": { "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" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2" }, "r44": { "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" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-16" }, "r46": { "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" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r48": { "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" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-21" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9" }, "r53": { "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" }, "r54": { "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" }, "r55": { "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" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "310", "SubTopic": "10", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-9" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-4" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1" }, "r64": { "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" }, "r65": { "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" }, "r66": { "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" }, "r67": { "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" }, "r68": { "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" }, "r69": { "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" }, "r70": { "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" }, "r71": { "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" }, "r72": { "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" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-8" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1B" }, "r77": { "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" }, "r78": { "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" }, "r79": { "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" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "55", "Paragraph": "182", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480401/815-10-55-182" }, "r81": { "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" }, "r82": { "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" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r88": { "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/2147480848/942-470-50-3" }, "r89": { "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" }, "r90": { "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" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r93": { "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" }, "r94": { "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" }, "r95": { "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" }, "r96": { "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" }, "r97": { "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" }, "r98": { "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" }, "r99": { "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" }, "r100": { "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" }, "r101": { "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" }, "r102": { "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" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r104": { "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),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r105": { "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" }, "r106": { "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" }, "r107": { "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" }, "r108": { "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" }, "r109": { "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" }, "r110": { "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" }, "r111": { "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" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//275/tableOfContent" }, "r114": { "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" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "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" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "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" }, "r117": { "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" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2" }, "r119": { "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" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//505/tableOfContent" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "12", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Paragraph": "9", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r131": { "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" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r134": { "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(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r138": { "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/2147483589/942-220-S99-1" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r140": { "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.10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r141": { "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" }, "r142": { "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" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "35", "Topic": "720", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1" }, "r146": { "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/2147480321/958-360-50-1" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12" }, "r149": { "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/2147480321/958-360-50-6" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r151": { "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" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Footnote": "2", "Publisher": "SEC" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column B", "Publisher": "SEC" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column C", "Publisher": "SEC" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column D", "Publisher": "SEC" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column E", "Publisher": "SEC" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column F", "Publisher": "SEC" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column G", "Publisher": "SEC" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column H", "Publisher": "SEC" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "28", "Paragraph": "Column I", "Publisher": "SEC" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "29", "Footnote": "4", "Publisher": "SEC" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r165": { "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" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r168": { "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" }, "r169": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r196": { "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" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2" }, "r199": { "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" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-1" }, "r201": { "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" }, "r202": { "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(e)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r203": { "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" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r214": { "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" }, "r215": { "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" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-12" }, "r217": { "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" }, "r218": { "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" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r225": { "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" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-26" }, "r231": { "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" }, "r232": { "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" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "44", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-44" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "48", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-48" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "48", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-48" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "51", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-51" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-52" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-53" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "54", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-54" }, "r240": { "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" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r250": { "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" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r252": { "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" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r258": { "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" }, "r259": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r264": { "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" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r267": { "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" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r271": { "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" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "r280": { "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" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r287": { "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" }, "r288": { "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" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147477123/405-50-65-1" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r293": { "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" }, "r294": { "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" }, "r295": { "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" }, "r296": { "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" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "r310": { "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" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-14" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-16" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-18" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//715/tableOfContent" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-2" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(10)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r386": { "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" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-8" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480606/715-80-35-1" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r434": { "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" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-9" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "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" }, "r457": { "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" }, "r458": { "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" }, "r459": { "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" }, "r460": { "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" }, "r461": { "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" }, "r462": { "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "35", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483406/720-35-50-1" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-10B" }, "r483": { "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" }, "r484": { "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" }, "r485": { "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" }, "r486": { "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" }, "r487": { "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" }, "r488": { "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" }, "r489": { "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" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r492": { "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" }, "r493": { "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" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r503": { "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" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r511": { "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" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r513": { "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" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479845/805-20-65-3" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r524": { "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" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r531": { "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" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480237/815-40-50-6" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r541": { "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" }, "r542": { "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" }, "r543": { "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" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482477/820-10-65-13" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482477/820-10-65-13" }, "r547": { "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" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//830/tableOfContent" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-5" }, "r554": { "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/2147481877/830-230-45-1" }, "r555": { "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" }, "r556": { "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" }, "r557": { "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" }, "r558": { "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" }, "r559": { "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" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-21" }, "r561": { "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" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "832", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "832", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483482/832-10-65-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-1" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r571": { "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" }, "r572": { "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" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-2" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4" }, "r575": { "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" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5" }, "r578": { "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" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r585": { "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" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r593": { "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" }, "r594": { "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" }, "r595": { "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" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482105/912-330-50-1" }, "r597": { "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/2147483256/920-350-50-1" }, "r598": { "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/2147483256/920-350-50-1" }, "r599": { "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/2147483256/920-350-50-4" }, "r600": { "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" }, "r601": { "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" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r605": { "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/2147483147/928-340-50-1" }, "r606": { "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/2147483589/942-220-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r611": { "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)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r612": { "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/2147479440/944-210-S99-1" }, "r613": { "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/2147479440/944-210-S99-1" }, "r614": { "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/2147479440/944-210-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r617": { "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/2147479440/944-210-S99-1" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r620": { "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/2147483586/944-220-S99-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r622": { "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/2147483586/944-220-S99-1" }, "r623": { "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/2147483586/944-220-S99-1" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2" }, "r631": { "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" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r634": { "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" }, "r635": { "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" }, "r636": { "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" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r638": { "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" }, "r639": { "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" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r643": { "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" }, "r644": { "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/2147479383/944-825-50-1B" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-3" }, "r646": { "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" }, "r647": { "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" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3" }, "r650": { "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" }, "r651": { "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" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r665": { "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/2147479617/946-210-S99-1" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r718": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6" }, "r719": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r720": { "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/2147481027/954-310-50-2" }, "r721": { "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/2147480327/954-440-50-1" }, "r722": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r727": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r728": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r731": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r733": { "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" }, "r734": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r735": { "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" }, "r736": { "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" }, "r737": { "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" }, "r738": { "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" }, "r739": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483426/235-10-50-4" }, "r740": { "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" }, "r741": { "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" }, "r742": { "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" }, "r743": { "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" }, "r744": { "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" }, "r745": { "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" }, "r746": { "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" }, "r747": { "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" }, "r748": { "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" }, "r749": { "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" }, "r750": { "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" }, "r751": { "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" }, "r752": { "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" }, "r753": { "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" }, "r754": { "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" }, "r755": { "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" }, "r756": { "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" }, "r757": { "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" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-18" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r761": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r762": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r764": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r766": { "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" }, "r767": { "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" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482663/740-10-55-217" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53" }, "r770": { "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" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2" }, "r772": { "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" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r775": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r776": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r777": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r778": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r779": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r780": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r781": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r782": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r783": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r784": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r785": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r786": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-K", "Number": "249", "Section": "310" }, "r787": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Number": "249", "Section": "220", "Subsection": "f" }, "r788": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Number": "249", "Section": "240", "Subsection": "f" }, "r789": { "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" }, "r790": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w" }, "r791": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r792": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r793": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r794": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Securities Act", "Number": "230", "Section": "405" }, "r795": { "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" }, "r796": { "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/2147479383/944-825-50-1B" }, "r797": { "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" }, "r798": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r799": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r800": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-X (SX)", "Number": "210", "Section": "12", "Subsection": "04", "Paragraph": "(a)", "Publisher": "SEC" }, "r801": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//210/tableOfContent" }, "r802": { "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(26)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r803": { "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" }, "r804": { "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" }, "r805": { "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" }, "r806": { "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" }, "r807": { "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" }, "r808": { "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" }, "r809": { "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" }, "r810": { "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(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r811": { "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" }, "r812": { "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" }, "r813": { "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" }, "r814": { "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" }, "r815": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r816": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3" }, "r817": { "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" }, "r818": { "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" }, "r819": { "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" }, "r820": { "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" }, "r821": { "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" }, "r822": { "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" }, "r823": { "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" }, "r824": { "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" }, "r825": { "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" }, "r826": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r827": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9" }, "r828": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1" }, "r829": { "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" }, "r830": { "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" }, "r831": { "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" }, "r832": { "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" }, "r833": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r834": { "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" }, "r835": { "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" }, "r836": { "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" }, "r837": { "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" }, "r838": { "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" }, "r839": { "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" }, "r840": { "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" }, "r841": { "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" }, "r842": { "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" }, "r843": { "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" }, "r844": { "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" }, "r845": { "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" }, "r846": { "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" }, "r847": { "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" }, "r848": { "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" }, "r849": { "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" }, "r850": { "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" }, "r851": { "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" }, "r852": { "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" }, "r853": { "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" }, "r854": { "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" }, "r855": { "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" }, "r856": { "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" }, "r857": { "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" }, "r858": { "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" }, "r859": { "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" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r862": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r863": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r864": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-6" }, "r865": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9" }, "r866": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r868": { "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" }, "r869": { "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" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479365/842-20-25-6" }, "r871": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6" }, "r873": { "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" }, "r874": { "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" }, "r875": { "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" }, "r876": { "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" }, "r877": { "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" }, "r878": { "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" }, "r879": { "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" }, "r880": { "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" }, "r881": { "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" }, "r882": { "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/2147479440/944-210-S99-1" }, "r883": { "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" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r886": { "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/2147479617/946-210-S99-1" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" } } } ZIP 79 0001140361-24-014799-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001140361-24-014799-xbrl.zip M4$L#!!0 ( *R"=EATE9RHD_X! "$)%0 2 968R,# Q-3,P,%\Q,&LN M:'1M['UK5]M(MNCW^14ZF3-GDKMLXOOE]ZE:025D>6 M/)(,87[]W8^J4DF6P1!##'&O.2?&UJ-J[UW[_?CQ_WZ91LZE3+,PB7_Z>WNG M]7='QE[BA_'%3W_?/=L[//S[_WW[EQ\G.5P&E\;9FR]N&H4_O9CD^>S-Z]=7 M5U<[^,U.DEZ\[K1:W==AG.4B]N0+=7T4QI]ON!Q_=D5F+O^RB65T/OMXO;K17,WC-/^I+PRSI==K#FS;+ M5^@;LC0W%PV ;H0<[E/]Z=_JAN#ROO[ZX]'6>BC@+ MDG0JT^\W6J-EMZ^?,L^:%$+/% M3:H?2AOU907,^HWP0^E"+YG'>7I=?['ZL7S#/$V!3)?=H7XM+R9/F_GU3&;U MP(2?7^//>$^GV>K:>\[3I10P?@V_Z@MC$7I9_9+HI])ZLM"KOQ1^*%^8S](E M5\(OI4OE%V]2?RG^4H:@#)8 3P;E9WK^DD=Z?NG"/ J$N1).G'\=29%/9+KC M)5.ZLMTQ0%U^P)'3O'C[%\?Y<2*%CQ_@8Q[FD7S[XVO^E[_[KV;3^1!Z,LZD M[^3)&^==F@@_#?T+Z1R$,1SY4$3.61+-D9:SAG,8>SMT*_WW/O'F4QGGCI?" M,N$1\PQXGOV0D]/C((RDT^GM='?:._U.IU?TF+%,Z#W_22*$G?.'\-Z+\?'/UWB_[[ 2#XHQ]> M.B$@[_W9R4&(Q_N7T/=E_$(_S0^S622NWSAQ$DNXX\?PRQM\JTSY(UU-'^&" M(P!6&GI.+*9XJPS?[ +T?(3@020N7M";#H27_S%R@U9GW)9=;QSTNH..ZP_& MLA_X;3'N2-$+U):_Y*=(@AX21JO=:N=)02+,@7YZ 5SK31!^D7XS$!&(B+?T MSX^O2TM:OL(]X@/Y09AY(OI=BG0_]M\#KJW%]MQN, K:G;;?&?4&7G\T'(Z' M_4%/!CTQD"W_CHOUX>G-*=PQ:?KB^L7;=@?XR,KKU219+/@ OLFLY0['HW8P M'O5&_<#KM=N=\; ]]L6@TVFW6GU_T+E]N6_QTSU7= *_)GYU3>.NZ/;[[9;H M>YV>+X:CCML2O5ZW%8A6,/1:*ZSIX/>55[0? P^XWH,UI2(ZC'WYY9_RVEI- MM]/J#]O^J#]NC7NM\6 \\KL^4N30[_BM0*ZP&CQ PTUNRJH,4W@0\12U+ MB;XW<)4KT^/@>"93D)_QQ9F\0.#9P&J->D'0;?5&0[_?ZW>ZHC\>B;%L]^1P MY 7^"L!RYG'(OWX"G+]P?.F%4S@6/[TX/#H BM-KUHM<<=&GY8@2\SAOU>VZK(]IN:P6@WG?590+0BSY)$X!Q?GT2B3C? MC?U]8*PS7/2G3 ;SZ$,8V&>\[_6"WK#;DZ, V,]8N -_' 2=O@=G7OA#MV;U MN.8_EK[EW36R[MTO8?;'1^%-0'E*K^W?/TJ$Z1^G(KY05X5Q.)U/^?L7;T^Z MJ]'[_;8K@I'TNCYP7-GK"3D67[!/ 4\SE,)OQ\ PX-/ MV:V['=YMM^;X?)!@%IRBC#T.8*>[62;SLQPX+"[J.# R_B3)0J29_2\@2+,0 M2/A#F.4V^8*&WG=[7C 8]WJMD3L:B&'0;;N#7K\-C-1;A$B'.<%-2NY?;USG M-]ZQ._8#7_CCGA"RUQT/W-ZX[PE7C,?NN.6*.CGQJ#OFG=* MV14]W^N(?G_4Z7?['4_Z;J]]3PS?L,IONMOVN!VTNX#A]FC4\X8@@Z:,D]KYFTP.O-QB,^OZH!PJP M&(.Y*7J@KDC0SUSX>JUD7:QU W8^ &-8]CO#H!, F_9<5WK##I@JWJ#KP5&O M4Z(??>>UQ/.5^Q8#;^"CXMT?@YG3;8FNV^EVV^U1SQ^"C7W/?=^RTF^^:QET M P%D/6JA*P'8V,@?]-J#CML/VJ(]N">=KV/7:$6?2;@#;MW_XDU0;S^"7VR3 M7HR'@2O;G4XP!JIUA0OV6KL+QJOK!Z!/K6!$'^V>O=_]W[L9T'O)=!KF9'R" M?8%N,J!K"?"6MC':%MX(>$AW&(R[H 4$8Q]$8P_8B11"M+MU_J5%$Q3]D%GX M)@ZCGU[DZ5R^>+V6M?G=5K\3M(.![+A@;[HN\+=6VW6!P05RL%QHK[BV&B?< MW _S)#T(T^FA;VM,+CK>A ]F>KXJ1^\\R6#A?+/Z'#_Z446 M3F<1[?)UY9GT9Y;,4_J+ D]OU+IIJ[7K5M=)_74V MA)BM_77*]/EU^]N4PUJBSS7NKV/8TJ9@LL26.JNSI8WP4?T[E!/7(2WD8>\E4:M_I MP\))X9[]_?RG#R_[,HM"+U1>;,^+- 8#.GL66*O?U%- 6<5XWK+- MAV>;&^$=J%@G6[WF@?#[K>/965G^?)WQK&7U? MYWR+[^_K?&^=QP_H/-Z(\W\W>MC:9D\-OW?4X[;G_9'.^S>SU;=2_M'\W>M/ M8=B:88\::5IKCL96W]J<8/UZDV^VKK!'B$2ME9EN=:'-.8N/+B6W9_')L<^M MW?E$SM;6=-C $[;U[#P11&U#;8]OXZV91;8VNSRHW?HF3N8R7?\LDXM4S":A M)R*BZ4]GFT:X69J_6;K>%V]5E[@WG\Z> ENY#?S[3Q7\^\\"_'N[3Q3\>[M/ M!_RG,M,;4D;@98B;/0Y.X&$I-QO;3],$[-\TE524N^O_.<^H"G! +[>C.TMP+^%!; %^.-I M[)7\ARWH;S,A-B./88NGF_'TS?++"#OO1(2=8\XF4N8?$H_Z>Q.R*,*@>\F$ MF0W9R?B&AL?[\8^?)/. MI?^,D+?Z'I\"0F^195N$/C.9MT7H4Y.-2[/7MR&&)V3+;;'V%"R[U;&FTL@0 M$AO+,6_!(S:1?%.WCV>'UM59Z!:MSY+';L./3_$P;K&V.6=M[0-\GJ5'>V4C M9@5 %O;,#1!]"A;IZJ3SJX3#%&VJW+T7[LI;>E[HNM>HKLW":=U)M]>[/>D/ M0SKW&7NVI9P;*&:9KB$:1RC>DL2J[EAA>ZEO9NET36 .'^' 2942T$BS>N#LIG9P-7 M_4U;>MS2XR9%*^Y/C^]#S)A/TBW-W4AS^%,95,^.IM8G;IM:#Y<Y'(N!08+I!1!+@ ]&@M M>#,IRII]N>KN"D)8OLUG1PU5J07;]>=>?IR>R?0R]*12D,+9C&V87T3L1_!Q M,[&.S*)N![:"LF0KSUYV;#'[;,[L-H3SE%(&5T<7S3V>))'_3'UA-^SO*2!R M=??F!V! SPEO9CM/P5&Y^GF[(<#W+/#V^ ',;\0XEX=-G@4>'STJ]*W8YE;^ M/0_&JB-=SPAWY2T]KW.WE8,;?>[N'E9_1KA[E'.W<>DSSP)U3SN9Y0YF^];: M^]9&PK:@;T/!OZT:^:;@WS;:?%CP5Z)G/+S ;*]4ZP\VGPA32H3Y,@-H;'A* MT0U;456-2S;T[ )I=T'R,3P:_HHOGCZ.37N// CP#+V1>IGGV8^K 8> M.VAUGE9Y2S'GX X@6.C=PHV?/ M?;8X?G[GN-7J*1RW6H-NZX_WTLT/P9),Y[@/A=H,-C'/Y7%P' 2P:1'MI=(/ M\Y_G(@6+4TI@Q&=3$46[Z&[SP_GT+/R/]/<1@+,TS#;=%;RX9ZUFK&OG#T8V MK6:KMR+9P*6#9K>U/O;?_>-#& -H&"0'PL,6>-=$,O\X^9BD%R+>FXA,OA/Q MYZ/=S2:!93M1A+!T/P_F_D=NT%U3%*W:2>J$3O\S#E&0;QDE,>.Y*=ON^OE>4'X1!?OV\L'WSEIX= MHA>F-VP1_3Q5\141O67BSP?E]5Z4<_%E=YY/DA06?R2FLC"P8Q&=RDL9SZ4J M'#H\/=MLE"_?4<727KZU9\_1MUA_3*QO"GN_ >M[(A:^4(#9O9"QM^&UR:O@ M>^FFGAVF[\#5[2_/9B+<< &^"IZ7;.G9LZ77ITVO3]F0 M?F8F[/8H/6U#^BY'Z:F4DGQO1^SA)\-L].%][L7^4Q%)-+U 1]^P\%7$F/+SUW;5^(MM+,J:CH+_<4)%Y)RJ\!61? M?Q:^#N;:RJN'_+>P\DK4^#T>TM5/V]+F%4 !GS;T\-S2Q4)3@[6#1Q(7]SVH M6TJ\B1(WKXG09G#O;]+*Z*G0W8:K*<>Q+ G+S62T:]4/ZK>\N>K!9G"!)WI$ MVW!$;QN9]"D.\^ST[),Z49A?7R0E727GDV2>B=@':CN?A&DN95QY -[QM,QX MTQ+0VFL1)+G+CC?9M%YMPE,9_>L\ $55:IO(?WU#.'O=UMIH^@JV<'T^2:5\ M\F3]Q$AJC<=T!20^#&4C8^]9M?%?1]G<2.&QN/6FD>^F$]F]9<'745BE^\)# M#C!6.J1/.N82>&=KXJGU(QKW)J$,]K](;YZ'EY):9VRZ5OZPW&DEIG_#V,@; M +IV<4![OP,-/3=M>W'KM;9HTDB?+ORT<+I.9!HDZ53$GGP0OO_'K_! '&Y.1]G$ M0O>2*;;9Y3Z\M* 4EC"1&.CEG8P$];D!Z\ZSY#56,OBLGT]8,WABR['2,8M%Y0,5B M&SG87,I=HU;QS2('G=55BLZ:58I-MW$WWG7T8"Z4[]7*_JH4O:IT^:H4O:=P M/C;>!_1@OI#M^?C6Y^.6R//=8+RI]/N U/-4([N=&F170 #J5!U0GAZJ[[*O MASFRU68T#WEDMUA\AL=UB^A'/:[=QSNN=["?GQ(2-\"AM3%M5[<(?R2$?[/N M<%LT/S":'XHWWWQ4MQ+V&1[63FO4&BVK06=OS:F8YTTB(Z&:])A)#@ MV-+#"O2P23Z4+=8>!VMK5M=Z;9TJ )^V^'L@_%45M5ZSO6IDV[[T:Q6UH[AZ&L-PC5KY]CP_DA0M'=&OY\>M+=8>"VOW[%HT!VN>4/:IU6H; MJ$^ER.:I?!MF2:_3'K[Y=/9>WZ]_TG_C ^H>UEEXF-HD BB[Z].ZYFD49)?V M-4?SJ4Q%GJ3W7/W"_?CE>QDGTS"N>^RJ^R@]XG5Y];=LM[< /"8N>)2\*^CZ M2Y[%Q';7IPWJG_8^S*C3Z%T?-UQ")7!^[KS14?W2]$2#NSYNO 1NJJWIS8\+ MO[Q)9419+]DDG#E)ZLOTIQ?MG=8+1Z1>FD1EUH7W[B3IQ>L.T/IK=<7K0'AY M,TB2/$YR^<()TF1Z*H/LIQ<'\,,?(S_H#_R^Y_?#3VVIU6NR]:@V%+ M]((73IZHR^$1?\".1$^,6J(M9&_4#=R..W1'XTZKV_*Z[>'@A1.%\>?3FU=& MR\+K7KQ^G$WV?<]K!2-?#EI>3[9=5[K#ON>VVWYG/'1][UELLCMT97=$%^MGMCM]MZ%IL<>#YLL W;&_BP23F20+6]KFAW.D**H7P6 MFPR"]F@\$OU^%Q2/0=\5H()T80-!=^BWO9;_+#;9D]YH,.C*GN\%O=:H,VIW M.^VVVQ:MMM?W.^)9;#(8";\[!FP&PT&O&PR%&'?]85?TQOU6T!YWGL4F6\&X M"_\3[?'8ZPTZ8MSN#OHMWQ^,W8'GB>ZSV&2_-6P#@^EZPT&WUX55]_S1H.7Z M?0$'M-UZ'N0Z&'8[PU9;MH)AK]!Z_K^N#=T>QV_[[K/8I/=T7 @?%AA MMPV8'(S'[7Y?C"7LP _\=K>J\72 38W'K0ZH2?U>Q_5=, A;O;[P@X'7[P0; MNDG1=<>PNI;?;_5Z;L]S76"JXR&LN3L8]095C6?]FWQ-N\P2,&%EQG].I/#) M4 7[Y>U?_N(X\+\?X;.3Y=?XX ",RF8@IF%T_<;Y^SG8S9ES)*^2 7SC)5&2OG'2"_=EJ^'@_U[]\.(M MO(??Q)_*G\MKL!^) P=D6GYO#]]+7US)\&*2OW'<)/+55\O7_J)X&[QODNK7 MN83[-TZS-XXO>J/$[4> ,T7 M XB_!O0?W K77*1@7/G-ZD]U6YZ*]"*,FPC4-XZ8YXGY*N6WT'> Y[\0*#\= M'9[OOW?.SG?/]\\4?@LT/R*4S_;W/IT>GA_NGSF[1^^=_7_M_;)[]/.^LW?\ M\>/AV=GA\='7+*MSWV7])N"@QQ=Y$C><]SM[.TZGU>^-;UK*7<\"F)EN^MJB MZ:_8YLAL\Z8]'1R??G20EP'MDO,C])Q8H#/-E^&;]XDW1\\ YH6\(&.8V)+T M1]UVJS?H]7VP+?M"#+QQ=RP&T@<"[?H@195G"7A3;6[CB[?M5O.?Q$Z*][Y= M=;=_@A4?!M>W[JX&O"\_BO2S)#UD?EPGKXM?:X$E+A;02Q&\=S$9W*69+F%F'TY*C3!QUC MW.N.>SW1'@EOU $KH#7P_>&P%=Q.& X56^0_O0@!1)GTWKA)$KDBBI+<3;Z\ M>/L_?QT/>X,?%DBG=&STXHM/;MO87^C*M)0Y@XD3I_C0A8UM<'R .KQ!X-^OR<'P=CW1[(W[,K../#&?O=NU/3&AZA?.G\=/?H[) 8T'?-FW)# M(0Y'PIP_U'\ 4_WQL?6YDDWQB =>F2%PRB,QR^ :_>F.%MD"2@ND+Y[\I93. M:ZH_^0O/N)U(7KS=2Z;3,,.(K7,0 DSA1")_7\I%]BG BI?RE1;WZ/9;0;\_ M]MW!8 !&]V L.FTQ](&#"-%I=5?0:MZVF_#O8+1$JBSLKIY#5 ]1">8U!^D^ MQL.=B)O-QA_#Z863I1[PQJFXD!AL;^_\.;MXX8@(&*8:S$G>A/*"%/W_"*0> MZX75$=I=5M;MH-W,7^ 3T2@'QAVI[RY%&@KX%W8N\GDJLR6_>W 0*C]I8W'8 M:OT IR('F#75(2VNK(,K?4>L!V6(]A)<34)01_ !UAJOX$P6#R47P*+)C[#I M]/N@IZC_]TJ]PY=>PJ,5WSAPO4RC$-_DA]DL$@"Y,,8OG/]RPBG*1]@G;"U* M1*[6]&*]J.@4]O]WC J]]S &P6/69?VN'J5_OT'1819U*B] [X(]Y-CAQF93 M@\!K>^-AOS<<]KKMONL%_KC=]GH=;S0,?'<%-G6^>_3^=^?#_BX(_U/G $3] M\>GO#>?P:*_*N79^?(VT\M;\4^$U]]-D7>5$W4P9=W_-MC=>7;C=PJ9OI8_# M&$AKIJB+)B3O\2SDO<2WR:77[LJ6]/INUW5[[:%TA73=[F@@A](+VIT5R&5! M)\[P;;,TN<0UL5D5B2N!Z1NWJ\6&:*I?KJPM=Y8"^7_^VAZT?KC#HWI@B@P> M#V?GXLNARDCS"&\+.LAXX _[ S$(^KU1;]09C/J .=EI#670#SQ_N,+A'O:; MG7ZOV^^UUHJ.98K)-SH=+XGD'=#X$U#Y4] (TS#S0YK,["0!\%GK>-!EZ86( MP__0WZ^>,0F^/-PYW3G;OX'A[.QRT:R36D^;3YB4/2>S+4.+W M.R-_..IV1*<'ND1[/!SU.G(X[ R ^'OR_BAY3DJ$@B$J#": PBM>N/AJ[P MP> :BF#0]/,#PCWEX4'Y'_^.NJTAS]DH*Y% M _?@U,?^O0"M_NO'1?(<_"8,>NE[]YU%C&=Z[#WR%^<;N$M_VP-_AV M077#AJ.([@BB M3=L,OS0GH>_+^ V[2\5X&+BRW>D$XUYWX H7SFB[VQKU7#\ 4H.-@X@\$IDO M_NWLB5D(II*#N8$RUV=QS>;,BKKPFJ1R.;$ VU%[Z!5UKQUO(KW/F ;\V0E9 M44B-.N6$F2.<*Y#8S<]Q<@40EB(#I^_TR]_I#>;OML^N/A8"P]K]7R0:<> MC_SVP!MU.EU/M$:=_BHV[%%2I7M'Y1;6P?*Q$WJ_(MGE+LB.DQR^^?<\1(T2 M%,D ,R52RI[*ZC7,+KK,S5^4*U3HF_?&^*])-(]SD5+^19K942I7R/%P- Q& M0Z\W[LIQSQ\,VJ-!:Q!X?L];Q5)9CNE-2-U>/Z:O)I(B'Q5TOVR_#/F!CF^/ K*'%PJ<4"9ZGT)"EW M[8Y#B9B9\Q*>',#_97-0B+()K =6KI*S\HG(J[NX$MDBQ=+-:C>O@$G%OO.R MP[MUI00V-G?_A+W@]70IW(2K4,_!W,&,%H'OFJ'3>MQR?'&=[:Q&O7OS-(5G M<-8ARNE<-3NM;N]42< R=0;#(;M<:?='JQ Q+_+!0>M MH>+;DC;0-\)"[2AQ3*+B=T3Z2 A ],PSX%J9 2TD"8Q*B+1M2-!*;D&$0F$ M![A"[]Y[D0M.&JN"IO)AS39A%]V?-<^M /,@QX)49ZI;9JYW; MJ-;:,6Y8$;'->L5H $RWUVT%W5Y/^@+##5[;]STQQ C)UU&M\YW2(JE8D4B! M80K/ UH$PQ%PB$A#_2JN_183E9JU/V13(&)X2ZJ9#R!E"D?]FIX%O W+O2XL M8KQ(DZM\HJ_2'.Y,2EHH*7>4(4N^;_2O=5H_+%LN_=S^05]VZP7+%ZLO1-:M M+M9KKZQ87ZG53S NFQTMEFQ9M//PGKD/]7#1= VK6/;+"FFHZ1[<=Y&DUW86 MB!@$@=N1W6%WT!-](7JR*]SNJ#\>N: DK6 V+P0#N;$0K^B-8;=NX/JMD=ONCH/QH!T, MNNM*W5\L*7+VZPGPMHWHVWZFN_;X)MMV:7?Z8H0L5;1[@>BX7M -7&"RH!CT MO6'KX6H1GCB;#6R.5D$*^OM7-'M0&2 5 *@:[1^0GO.,N1\LE$N6%@L%4#CC MNZ)K?/E5"*]&6HAAR0E2^V682=\Z#\!&1>R%(D+V@/EW>!LVX_)%ZH-MA8%^ M?YD;O_M2O*IE:;?74AV$\5D^S??3-$GWDC3E1QY$XL*6[*"*^J.@U1T)L*>Z M+=$=C=Q!5_1:/=<=B!6,JN^4!.\NZ;.)!$M+LXZ7-?Z3D@ #)+^RK>C;F"8^ M?9'%# =NM]\3O8[;Z_2$&(R[PW9+#$JQ2$O#^$)666$2$RC2)G 3LF)) YN5H-E0(9(I0&&8#9]X*&IZ) MU!7PFN;QETA>DTG_LMUW/NV<8;W[L#/ ".,K!$H! 16.=",@4(O9Z06D4[9@ MP.R9";P4^"6Y$WW:AYC[8:Y6IRC_-JO[T O27;PM27<+P%9X7!OXV- ;]?M# M;PC\KBM&F.WB#?QQ9SP.^ITMCZM_(?K%Q<4%H!:I?THN<159433B<> EP\"+ M PR(?$5DH 3H6(';,GUIQ6(5,Y![7T( J@3#^[\5@@_("H4G5KG;"='4 5:H MV IAKS]P.ZT1Z(7 W$#U[09MMS=T@U9GV&O5IY0-L&\:=N.C[ZB])?!A#U82 M91R*]@3"L%6N&([GTZ:?4'P/+WWQMCUJP%%MM 9]C76]^+=PQIU_S&/I=%M< M0>R\=''V";( MOI#3^)%'/M; "3")T+?$X#++VZCKURE%J-32I__:9+AL4'C M!6!)JHE$E08(-8E]78;][[E 5\*K&XVA)T"5AATC3#C% P'!C3>=9)Z3:H5L M1X=;%RC0L%D*DC.-VAB@X(:Z*T(B1I:%R/4HKP&KQ[5DWJ4+/XH4WM/I$+I[ M#;PQEZ..[XX&HM,9!QV_ MYP\[HB;WL]?J=CIE4N_8I'YX=+ RL8\:W?&XT>G5T+J&^W(8VZ1MH>>IT^'[ MX[U/'_>/SL^P)NKX].3X=!=;YKS[W3G=/]@_W3_:V_]6.[S[LX^.C]:\6DO_ M6+4]TD(')+L]TD+OI&_3'NE&N'N1%"GV$,HGYGY>/"4KJ6],-R@"E.ZB\.[T MY. $U,!WJ12?,66P#$+K+7;.T\+MV/R+^F37%MCJ1\S@RJ:+;P))G2-"1'0E MKK,ERZG$Y2U\VIOL(1XJ>Z3OZI*TU'>$.XW)CH7(M#7E^&Q MF,FN?WCZF8#EQ(V%Q*HE.2[CWI(//5 M^*M=O@7IP_/]C^T=4%/A7Z>MU<1WG\X.C_;/SAX*]'<$ZC>%X%>0217.NP;0 MNQK2IX=G_U3EZ@\&[0*D^.I+L:G%T-S@_[/^]^0*#N[>^_/SSZ^:GQ>:S< MVF0"[FF(]S3$/X+RXISM'NR?_^Z\/SS;^W!\]NGTX:CY24'T&RKT1J-_!BI] M>[39AZ*O#T7?'(K=TW_NGSL'QZ?.Z?[/AV?86O%'9V2?XZN33Z=XONV?[9VAK\[U6 MY\7-.6_?$%GKDRP#C=*!R7W;_["_AV@Z.#S:/=H[!#'S?O=\]TF=KLT_2D,- M]V%QE(YV?]Y'(\&<'Q0SGZC!.YT/N.##[V>'="X*Y.P='[WG9J9X#4BD3Q_. MZ1+4MW;QAPTZ,^/-4F77=XY&&I\C8W( X(\_'+[?+9\E&B? ,1/$U]FGDY,/ M]/?NZ>]/\:!UAIN%TE60-=;(&AMD43-?#&,15N#@[?Y\NJ_P]-OA^2_.[M[> M\2? $GZ!9XW_!,V;;K!XI5$--^;4]9^%HVML'%WC7>N,G9\>?^"C1,;0^X?4 MR1_H"'U+_*P$^7<:\,:_=4P=,0^/<%X&R9C-(?:Z-MR;3^Q?;085=M S,(3Z M_V6<3&V])%X?WBZ3Q[WAK/_+S!7S@]_Q6CAP>&>MF],AH3S\_&O^Z@ @_1D_^B,.-:#0?ZAI,2FGPGC\VUW"EN2 M/>[.\6]'< I^.3RA^/G^Z?DN:%KO]H_VX7B@UL2_TRDI["!ET"QU&FS/SIK/ MCG$SMXV?6>.*T("V).#PK(08FJ:Q2S,S@/6Q]LR<$/2#]_MPWM[O/R2C^UZ/ MF_%0MWM%C.40C) 3.$^%M>(<[*NY<6?[I[^",-H>FV^MJ_VJ5;5?G]29J-?4 M!AMV3+X".?O_^N7PW>$YZ+9Q1=,T M1AR-Z)Q]^OAQ]_2I1>[[&^;N7/>!.3O\^6CW'#TN+]X6GS?YK Q:Z\*(^E!M M7[70W7TQ271YMO/7Y% 7*[NM75CU_9RWR^G6I>8I=\@_+::K:H"7)M30 \UW M+]Z&X;)!*32\^^"$#F@88 M8B7+'I;2Q'E6ESTC:DH RF1>_FMYGCA\_EM7YXES4K9*T[TI%;NTVX M=W7EJOU]&!RCV^=Y_&Q;?I-IPJK-6#73R29@Y!R % M2*MK4+V>"&-J-W8E4K\9)/NU\T$*VBS6*2;I=<,YC+T=YZ7JW7/^X4#UZ7E%Y=ZE>G?3+B@& MZ@IGN*-JHR#><>5+L_^%'[[,8'4+7Q.$+ANH. ??^.8^Y@)0:CB M@)2B@CAJRG-@FHR45EJF',M%DJO'> RC-YXTI3K GWI<.US?.9U>BLIJ.!QTW%# 43HJA:WZ9G M/$/9?#KC4V,1-Z[Y8_=PB3(7R4I;4-?8'=C-%%76"'@>4X_ M9_,H1Y) /"/=I"'U[_-#8$ZPD33!1A,)@%YQ9^ZQ<@M3-)8W\3'%?/D=3#?4 M]R?.TQ! *TT'27ZI!/#4 ]\ PD9"=75 Y2C&[8C45TG85$#05W :;CU>I?F(!(! MZ\D%]XPA'HZB,)N[(!1"D2++N8?64J=7_2QC0$6T)AT(S:*5I/P:L*$_;@(V M7F'3)IPBHCH; (^*?'-6J UB!N(=N;.(\FL@6Q =V+'8U@8B]68\*^JSEX+I MWM12&1C"M& \:$$SJVJ/VV/\MQ@GUG!H-!?UEM PLX_:>+//5E^/+4731S0 M8"*M?>Y21QK!QQ;?#?H#L #8;&QI/:J3$!YC;"<$))!,<4MX!;70G8<1,#9L M3.)]QI8C2>JC[.*)ZG Y=AT!-'O2AL*_@6F' "*U1(1\$L%.0);X.!(49,A\ M-@,Q#]]]#I7>DF/K#MR(YN_(KCMAO M*&JT(,FY;P[3KI)EU"%F)G-FO4B9L/X)''O'3:FK%,*1^L*0!H0];2_43RA+ M ?B$]^0::96A$\L<]X';8MIEN9WI%DW4E8[T+M"S0DGB7] [FWF"@D^3AY/) M]!([VJ!<3_65N*A"*YZ[IJMRA+.(%L@5NX1@JY)KOA47"'9[\UH*-'I LX.+ M03>XD)9BIK1ZW14WI%XC;A@+/>"3"0\[4\-O\/1_STEL,V3Q-1?AI63J95@9 M(,-3A7\)9@F\,2OT?D01"M^<=D-GAL@*%**(Y-<:24("7,&6)*N/#CGV84]! M34[#"'MNIA[5O=;;UKFP]/LI MA2<-40$4R401+Z$1;S0-E@KN1VJ>P&]RHE4M]#S .?(!8]_2V0-*X,OH+W@" M-7.;NM&UM19D2&AJX"L--&9FO%S"0^6P1]22&9J-1='@T"R^]5'@>2%H%IKY M<-,?9=,A.3*'Y$95M;,TG)^!L&:JXQQ>E=$($TN=TWKC73;PB.&$>[5=>0+Q MB.XV'/$=A2-NL1U.61,XB"1.OUD_([%81D(&(S(Y8+TY,3V LC.R@'PJ8 M/3+\<5OS^9#YS*>8[&ER>&6&*V.#2LV1&_!$ZR;2>(42$U)Y+N#[LQFPXO4Q MSET0VZQCH*ZC7%R):A8JM.3DR>,2Z%GXJCP.+<$72"\$-7P5P1,. *9]-=ELHX&!@,?704VRY$Q29#$1EY*>R0!#%T48LY[H MRH;6VGX@AA=A( _Y"Q,G*39DN^6>PPVR$7F4)B"7F7.JU'Q27_. MT8T(1\&H->BA"H*&>AWY+M&.(QV\X0121DIS0WN4VTL2SOG;REVPTICT.E9V MI]BEDAW*K,O.!)E,2%S"!:5#@]0&G%:MM(V@K"&A4?7 M[#M3GDWC!(;+M>D9QMR/4#N:\#V)4E%%89.0.]DC9)%VI]V2YN6DN+1_<*0R MU('OL!V"[K>K24)G(1!IH167V$]I=BCU&<=/]58R^<$+4SY%)_BUQJ1Z*F%$ MNH5O5.N8C2KM2O).9[PNH?%"&V5ER\9(C1J.%@^^,E%30:A9II2^"D7A]@L% M%P'!EK'6?I$MDP2M$L!O2"R^9&^=?XN9@ 8C7]'$?30!$DTT5"?)W/+](6^; MD:6?^$C,L',X3$T.*]AG#_NF4J2*5PZ2U::R2QDE,W1H-HS"K5B@;)HOM+8/ MQXF%"FT;7QZ!Q=P$O$[1HTU,+/0X>(+4"4O,BLB+]OX8"*[1[,-W[!W_>OB^ MV1ZK (YQ49M@#L<\D!=.0HQY9DA1/7 MN$5R"FP"TOG!Y&SL95R040[ 6E D-66.7Q$_FK%A8!= M9+!E.O2JU72RM)\8A4!/Y6QHJ3 "\%584 MHK0I+N.55YB]A),GL@F(]>2*8EA:G0F$QR-"@;T!=7ND&0##\8W8^CE18@UA MU5 B@@4NG?>D)+XX"*<$%+8.1L9(@2Z6,+0*_#M(@) =ZM$*NMD%K"76,2$& M)T:DT-,F+O3WM2*QPNR4!J?6?DAT: ^@P4OE=!8EU[)@V#AL$*3'A6PL^I=P M#9$ENM"M!>O5L60K^@X85SV D9]F$["9,<&$E#TE]^FL3,G'*#F8B3A ]Q:W M^PT3'FIF&>W(/ZM 1@^2Q4DOD@1/+,XJ)'P@,\Z-,"'I541),?871>H\S>&0 ML?T/M'8-8=9*A2AXY\?0]\'WKT#; M8L?Y;8+SRT"CBI0^-9NA+JQV["5)1$(U -)M."B:M?.*1I]@3@#?1VW+,^5- M+Z1WP<*( $:/W%V6RVK8* MZP?SE*,5) 4967BYC4P7*R>E/&BCR*;:@<0\:*+Z8HIVA31*02E-F.[XB M;CN 9/QZ*J6B-NJ_-H:CN>3:E"42_(;W!CC($B #!'<%8$X32OZ@.5; *MY8 M2C\)A#"NQ#T6O>X4%0@45K+POB_1SO6#]XK?%AYN.EK2 MRPV=F>L ^7A6B/M,$M>]#C-.TP*Z ]$\9XOK9>9-.-SF 64H(<3."/21S3"M M*>'9<9;V;W+) AH"=ZVN)3(&A@2G0J2L7A^$*=#A*1A82>SK6*&>[L;!1N#. MJ6U9( J,I:8\^&54X#E"P:JL-JWY%ZI#J@(:$>50H.V1%0% FL^(:/!OPT/# M%MW\P.C:R/D,TU28:Q-#^^].J]%JW0Z0ZV>2)&?(6XI7@=*CQZ^9(*O27HA8G(ZD) 1UO"10LQ8#B.3[C!A*[N2 M\X#1S 8PU'_/0Q\^:%/$9M Z+<*R0937'%U"BZ[=2L:( ;C*'+E24TE,8):7 M #P2\R0Y.@NF,-HK*?H[5"J!T%)C#UV:(O1A-#[0C4MI1:Q$F@JR]@A3Z M9/9:%V]56U+#]#1CIHS/A0BLK<:Q$GZM]U"=)-1N_4V;H1IQ!?0,0(R_O# \ MB\!DR>7\(^#@[?E'8$'P;P/MI.9!E%2^)< -)9\?9*6;Z!=OD]WG'\ 'P!+ M46MAZB*'KR)G#<(4/5.%[PETU&DXG_(JX*S7=HP7AH*!)#O@F>81#65,B\[5Q-;*5V7[EQD M5ZZ-ZQU:+O8B$3B&[1!"&KC9+%,^K(;EU0(.!WM3;C&*W*%[-: M[8@'Y^4/S614X#/I5J41ZX#)4/F%^AH-\4 PB='H++2 M/-MB @9JEFH:>!B8\-2ZW%KAK:[Z-SY(C3 ML3=<@4]GRCLA2#D_)#'56&"4A:?!"NPQ/,!\RS0R,$\:((-9\"IGJLA*I#'? MK*1X1JP!]7!(F2:AT3U%,EQ]2AJ2^\B:TP#4&5CZJ (&5+I9J7Q/JP(SK=J/;:CD9QN,E MHH"&\8[1ZK._;!2;$^06)Y%55D2ZC7[YIAV*4Q3J626N3S-B2T_H=*KO-34A MRF%A884R#3AW.$+)@90R1R4',_QTR(V=X%2C 6)%IJSH$4^A !P;?22C>2&* M)*?BSR2ET 5:3W@[TFX3??7 >%!,()/+EJ5FVFRAH)[+$ 2@] +)FAE3-!0YOIV*H66 +F**<:DT%0Q3 MF:P40^05^FQV>G\K?#+EI_)"U2/6I0:]M_)<'D)H:[\3:ZA_8@CH6L4/B/EB MQ1GJ@48NX(E17JAJ HY])&O2^)$Q [UB(E1*:088-4*1"L3AALTI['Z" 6M@ M$*I4C!WSH.RD?A/UUNM%!SU)36,O&=0<>YZ@M XBO6EA0B/3H?"[,'V/MGPP0H2,. M"WI#+H4:=8R QM-@7@7@P.(VK8+-)E1CDEIH(SEQD6 6#& M2'5O,QIIS9[O4@W+;])RI)HL9Q46T@ PTI5\ 8_>;'/O$9^*K M9$P!&:$C("#&6&V]WL$RGI32V,P6+)O/9%_SU1A9LJ)60&;I7.4D48H8QZBP MHH<"W1'GBS&>9T -\QGE)]@1(L,.&J@X@06$<2AE%F+J?E.9G:@D@NQJPHJ: MG!_FSJ\IY*8=+)QLLFB+\K'3L*U0'YF_\HOTYIQM;L_"-<^L)(/@.@IQJ9ST MP*-Q$JU""FIB#'TP+2ATR:M5D170U=GFH)"T2J)1=;,%I\SF9&DTZ)V4A52# M(E-2;DQG+@VQQ3Y+$97XJ))52&JDZCPKM'"6T#U,L*&"!M-S]+ M.>-QZ%AA\/+LGY^P_$L;&:INN71**IF"J0SP:W38LLIK8KY(TA3E5A:7?:3( M[LA*)XO<"8:=<.RNH3#A7&8[L*IF85DQ')7'D,@V4A9Y(:K42Q#&_ KT813[ MK^4<->+Z9A'JW-+UYRMB':O,1_T>HB#]FZ(@M\8[;A_KNC"DMQ33J,$=5/VSA'.5A>E/NI&^W>.B7]SOK]YE-Z*[G77+IJDY0[ MS88^MC+(DM1X#;5$0G78EQA\I4H!5=OF@NWTF83H%#5>'3*FY%E6,66NDD:+ M6MPB&L.Z"LIE0*C#:)_+>I?=A&]TU278UWA56\/D'/ M+X%,I]'\)M$X,PGRY.#$.K*+()21;[[7EV/HG;2'HOZ!LT.TC-'!EZH)@?_] M&J;8?P'S:EGEY_86]K)T'(TL6=WP0,T-!CA0/ M3+LP61(,<^O$Z.2R6NJJ^@5M;TX)$B89FEUHG"Y]R=FGZ&^S28-K;:E'B[4? M!!%ZD$F%+7RB/FADAAK:I3=<#\R:=^$^YXJ5']_M_*QP 2ADMPFY%^QB5@CT1JB9+/1H) MH]/J=(ECF;("::?CV*%>_;SUN>O>J69!47',5<6QY!8D7:@F:S M68(1)7+E(%5VEFIJT>"^7AGHA9X*:(@+$\LQT6$_I(Q/-G5MERGQK2]AIB(C MNHZ,GI-CFPV.C22Q-.8R1:?ME ABM<+#;(82Q+()6)F9:I=$E0.:+YAL7-(% M\'[R/OO<(J"A"TDT*;'<4G9LPT",,,[&IX?NM" EYJB^QW3CG,/Q5#R"E0Y, M5RP*"QN4:N3Q528?-KE"+TP#>XIXW!G*O IS=;6H5YB_3) <(N:1.2W!3O%5 M]U'.-J7F9B7;W;ATU#LHGD$:#J]I7=FO&%4-*;V!H+M?9"F#?/X@KM:<%EMY M72!]9N543*2Z@7CE;&E*M 0#F0/5$2R)"B[Q[ -[9N)6&=OH#.'4N@H-#G0[1^SU!'4NS"HP MACJ)*)L G8 @D06?*'&1RDK+-&95I8HLU5%2\4^F#:,WE2**6,JR+B0<@M"D M-6-XZ 2][["=!ZDO!UN1#R^'XNE5(N/%"(N%FYL>L5X5(>0 M6$S13+@(2< 2"09+&GF9=EUU7< ,7/3%U99AHFAYIXU*NRF=33**I1F/ YU* M)*586MWV+!I*T#.+=2\.*E[D@(WR"668A;D^:9EN2R1+ZUBVOFK[,@041Z4X M2B*4DHT.ZHJ-7B8O?AH= QW*X%5:"3S8HU&WE:2$3Q?$K'8$*Z6T:2J1_SWG M$*11.>@-LR2BDJXZ3[,Y*18!^BHJ*9X: M,:J9JRH5HL:QU?.,'"R*M"( _T-FBAOTI"Y915%$YDE&02;XUP#B2I8T@;DV MLR2EHTSD=)OJ_[A.[L$VU7_K M=*PX'R3)QAC.J!TUZ+6N>;?"?*KE?]Z3AD M'6*949$ 2_7SR(B.X! ZG8:S>'*J8#^SZN%WV9^"2SI!!DN%:Z=H.P&+.I5> MT0]HY79>6N[ M:;OWA;#;?E!(.IF:5IK<B04(UM5]D6MK[]"_U74*7J MA*MVMBY]=I<=SG D+'):IPL0YT6HAMQ9H=F=[>_MJ,;<^C>M9B$(=SG]ZE3] ME,1V*?7_[JKR/5=Q@%,N@DL6^'[C.I*K=M^6VMCG)^ M#:RL!N&T&^G-N<:>LW*^J.)?K(GDSIVF/%778X(>4"(#@I^/;4A5RB!5<:#K M"L!X=76UDTEOYR*YW*F5*U]M8NL^3'IY86:2OF"E^/X<=27=0@7,W%(+P,^H M?LR4UOV0""27S9=KI])GOHI25-/RI% 3J8T/%YZD6%\/J5G24E'HM%?,!M!%4VC**. ,<'I[ !.'*HO1#9&0VP:WDW,%R$;46 MJM0W_;TIHZA1Z?FP/H^#U4"*$G]P&_N<+G4IG6-JG;;&N,UY:2H(MZLAI2"@ MO,8*D/4H W;_ZD4E:E$T0*3&Q?1FU=6N-E>'%=JUC=C1"C*ZI\0L@VOTIQ^< MQ8DR]6U!#'%9(OPOSLK3W]K#FOEIK-&;Y6D%'W1VAQ2:BD9^-0%";U*F/%HF M5ZFXP_@U94O5VP)U='H$#/AK!L;5C;O3&Z[?B2:8%5_PY""Z>['9 .WVGQI$ M"ZY9/ZII7>\Y U&QV;CKC'ICN M34(9+)H(]V&;ZL-]!N3>:&0L^L JO-YFT5A1L,@FRH6J[FBV 2"W<@LR5%9M"V)3@@%_\ @]RQ06@0O41@^^/ M,+OV-TS+XPD+! >]R:[:9$]W?UFV+\IWR6:Z82+'-QMV6UVK5T<8H\ B,TS(B,:B6&7.LU@HV%< M]*15Z> ZZ_MR*)AO.SF!5YVVSO<6-_PVWL M[_N*_=4/BM[=3HI^]$G1NYL^*OKT\.R?SL'NWOGQZ8:,BZY;Y>JAJ5.*@)Z6 M(Z!&PT$A5#-18YT1K%IB0!>VJMP-YI'V2[.60?/TJ+J%>D]0YX'RB 83N.4, M4.H4[UV7*I##C-IKJ>",Z;BOVVJIUYCTIJ^:,Z/R>G0/_$CU"%?E*H4"4:V0 MUANK;9.KE]8P;?59(:+$(M.HV+3TI:FE\%47D)9[P?I: M#[1&:EN-ZZDW$8_?Q0<2!:H^:YSDSD5IW&A$XQ(S&BGGW#S<2J*G&BK5PT>U M[+-F6*@VK58],:=Z&PB#7GV=47&Y@I%J;5&T/.08<&TZ6"FQSH!@@8HH(/@E%=.+0=*BK'9U=*TP[J'8-QP M'A<+:Y2.6,/J^.R5&JZE1<,U0\9%!VYKYK+PJ;(!/ZG>Z76*\_V-WEI.=6P/ MZ@MI<.N?5%V36 DF83RA<9IH0ZA&'46I&:9/Z1_BR)%D<8/^*4R-DKJ MUB\$02C-L)%;E\F3!LW:+$N&&ZR59WE7PX&KZ4BUVLUZ H"/%>4;D?Y3IX:N MZ'>B)]1J*NC"&G4Z@]5]6*33U&L]M]96F_,QCRLUK!0ZMR>E!!%R=96-H K& MU-"31KDP\(=U>JRV-/5D::K4XR;E$D B'=-3:DLI6TI! HBPXBWA@1IAJO5/ M5-7-X"PD(+MZ1(T,Y@)V*A)GY8#U!FY:RLXVU$WGV+495%*0VO(BC&-5A*G[ M4&<@TK#$PNI#+'3QN#2MC[?DNB57(E=068MVJ:R!<=NJHFM(B>@4/9EBW,6A MQEG>Y$H1&CJA%3D:,K8ENBW1(0'HHF=5]PU6!U8P;:EC2QU( %:YM7O-34Y\ MU1]A&4^R&G"G*L>?J]:I\+KPB.C""$X+5G7:J;R8J]3D+0EN29"DXM1,]407 MGDHSQ]ZT<_8EY.*+K/K:L)\+];*EZ6W%$P*V]+2E)U;>K:XREA.+A5_#">8RK^)J, ??Y4QGN]I<4M+9(5"=1 ]SOS& =:;.EB2Q<<_U$- M^&)G-GX>#?-*0VB1P9S(K.;2_ESL5.HWZR-<^EE;.0+\7^D2AQM\2V M)38D %#9YVIHBJ=0K.KR).# M<;1*27:T&UKS3+!&;?4> M1B9@35^EQ)="W<;18M05^$2@Q+PI MG2U!.3<9=D\+N5LOK\2DZ6!M@22X&C)1!&A7$>@Y'+J[JFGUVZB.8,+5D@5+ M&5\-RVEKN6P;CH1')"B:%0-%#LMG0VW5J(G47=8O3[SD:^;Q#.@D])@OJE5K MV.BV>!I321KY--NX&!VCFW5'U!=$U8$8*"R9AV,:W5$KW'D>)X%+8V(#"')HP7SPWL+T)#4&5V MZ1XH +),3SM2L$!*3RJS[ZB',86^=6:@VG:I#>X>YT*J/H_<&=@:=4D&Z,RT MTZ"G1L+[3.Y?SY.S7*B!E*7S>$7\@]]+@ G-&"4\.7#=)'0!U//*Q$_<6C%( MH7#C\/ZL+%!FVLR7N(@'=;+@VX].LA1MC MFX10+Z&68\B,Z"4EAQCOFU==77(I<]. I"Y1\^Y)C;<-\-G6-WUU?=-H6]_T M?=4WW7SB#G"P)\^ZN4PBSH1'_^1BZT&<%"ELC7&*$@B'-1<'7O4E'I<2LS13;:E8A6 #]4$XYKJ-@M\6DL Y M =Q,DR[F@&'E8$9[(1>IX[YJP9NX G!XM57L<8[2Z??U(T+P M./GU3+6=PY'1UB0%[&;'2B0-5XPMC1*!KXM[>/'T3'S\K+9\8V%J],%*^0 M9)Y;%&<=9Z'QQ!8WFENH&4<\)%7-?&=2\[&YN/8-H)E%?;(19[[&9*%]S[F: M"W%.;*[8]AT.'1I,#3TL*>CD\G4&RI#4C=D!Y,?<4W/-T P-$=&//6K4%XU!#X2(NV^+*WTPM30 M9M-%7JD+E7DE]ZN->R0%8H&FM/.#K&"+YNFL\&E4_CCD,EPB62:=U:"RS,*^ MLRP_I+E>+9Z68CJ"^(59C04J9BIM\3YL(SHEXQ^,F9!XW\)8HX5 F'5PS8@6 M*E:H?7/=LW6A,AA')#Z-YX[!0T2@7VNH]*7R 5)XF,U*4]N7\Q0T0XP,QX[ MQX8PH$NQ2S!*KF1JNQ#1EQGZ( -?F1)2X$/H>\#!>V+0M/^2(HUL2,UM9!&+.E1FD0GBW"C0F*-+P,!K"A!'PWS M7'MN%@B3*)*L1:E#:HT@LCE2007L>6//KCVPP<6\_POMQ32.G9(F9(_3*8:E MD;Q??F98$I.KF/W$1;UXC7M8.^=L9URC9 5E.7Q[ ;J]VHV>L:0KWE-R+^.5 M(<8WM/=?C>/6KKMB:J.JYZU6S)NF.H_ C*P!M38L*J,I/?LJYC<6QBQ)\55% M_XJ.PMB?8[,?U.*LD5)E=E=X>KGDWH(U*ZWD7.3Y6 6$2].QR;::9\;FL<=7 MJ>>2'Q=O-F/BU*A2=./XW.L@HY;6#)GJC%)#/:H[DAYY:@\UM\NC]"SWXKA: M1?MVS$E_UH,T&Z8S/XVG*L(#EC]45B9TFK\T-)2J0%# M/8M1.0UZI*X!PLJC=5_QP?8Q+L*Z.@'&47:(-:!>S0%FA<:4HBTM/:/J:QKH MR*O'11"L0$=$P6GQ$5@,>U(8'C0_L:Z= 4$F4.J).24DS,S&EPYZI4B%4D55 MVPJ3[TTJ7_6.8@5AMG 2B@@ !^+L]7"OMW+X GNGTQQ.)&:4EQF8O=Y$$2N- M\RT JH98+AG0C.,]U7Q)G(W(*LT,\54< 6H[HM95D7<;XL4P*4@O0OT52',-0-.$149E-DMF,) '9 MXTIHE1:M;>4&SMLD4Q6SI67*/=%%@0-M@R17A?VC9C/S^NC0WD5U"V,UD1@U M026%2;9NHP2;%R48;Z,$VRC!C8K7>\M0 @,C-]Q(,8XE_M";E*\%3?M>6EA% M*:TX(+)"/P>&][+]2IE6GK DL^720;'$T^&G\YCF1%UD MK:''D,N8+@4Z \%6@JNZKRP19PLWE**DJ>GFF&4^7H@@#4KIP^-ZO'8QI='7 MH,BHF8$^I4D96P];4R9:0.MAOL6(7V47,7QX(.#+_BM4629A@/Y$L-[\3/-^ ML[3"-*4:>SM)H81Y115EXXXQHU!B;8HF_)(;7^G0)$WPP84FRB J41S._\B4 M(<::(*D\J -;^HA>EMY!*<=!A<%0FV@H:57JQZ44XF+2O*V'Z,Y.PFA\/DT/ M4IVI3M+D(A53-*FV%C:]OYC&X"B:H4)#@YWG'23D=A#"A-'Q+!S P7?2L MV8?5F(GZUI(0UR?3G$L^S:B7%,?34\DP2[LO56S:5?Q6=8BPG3%JM08.5>61 M=VZUCM!EA:#HF#'!RGWDB6P"ZEMRE9E98*H''DU00Z5L/M/ZH/SBD4:(\0*1 MIM=4#22B>5W\Z$$;3)DD$MC8% ]+H)-&"C\0 )2*6[<]+2#-0P MHS&D"E@4$DIY"AQV-N/W\*C04"M[; .7'"F*,6/6#5I%J-V2C8?N&3SYU!*/ MTO(,4U+^"GHQ&$2EF>.'-?O';FX8\-#E\861B)GH7]";3=R@(*.*R;N0)&5[ M%5#O5JES;,N7H80;LC@.A;Q@>Y]C; %-<8\"*S2!5MD-3+08=[4(;S3JCSVS$WT<[TRE-EFQGRS3',OR^5L.-\5_9@E/ M1Q3<^^X:[:=84CMLRB$GX5O>K%9,BCPW*T_4]FF02Z.I&0KE@I8I=AIF?\[] M"QU&1H\.!VH0[(8PRR8?&DR<_3"/9\EL7FI3@R^G&6*II^:B89JB'88JTBOP M?3Z.Y6VH(FO="QOD8IK35'K5S2*N.T-K)D&X:6Z@(!CW< :XB\H1.8 M&Z3QL5+'X\&Y4[I6_DCI(>T;WT;CMN9_H\ M1M>J?ZO*ODQ JT%I,I'B$K6?\K3K->R#T$6]_.UFI+D4)OJ[5U:\;6EE:\C% M6VT7.GHUS)CZ,./A%I0671ATNC6S+S.:Y$D @?]-YF.M\+56^P'=1$U3@1#+D1&-5TY"00PO-&&K$0.D7 M%C!T2D9&$U_Y/<5Q+)(^V./EI>CHXA=R8CE&B]9['"C66,0_*+-Z'OIV/G$] MKJT4 23L F7HYZ,C;W-'BPNRFC C THND(=.W5I46_$ #2TGFE\]C&YN\A) MJ18,ZRG"R/K 43P=+".C?:OJ.T(B#Z\E'[".-9NQI["T$!2>.1ZK^T67EXOE M&OW=\J@K[=@HG+"O)N^'6T9R*S4XJK)(K^%I[31IU*(LM@B7(-+4(MS&H&XA ML]MGEKRW^A0JXZK(S%#(.X#SX_Q&DQ1+;>C84"7KL[;W0XI0=7$O[CW^-;W>YQ_C[ M\OJV6S>Y?6]U\-8[AI>X?6N"'UKM"]"Y4'LU%R>$G-+ZTIU67NVG#.Y1=!:J+_;QXX7)R*;*>9/<3M2V)+EH$N5 61BHPC'>G67>E9+"=1CN"CV6 MJ!9/YKF#QE>I0AF4/H^S$>D-A&?*@R,=NIB,%%^KX=1D++(@R.:D4PJ[O- H M'X71I_AYJ1-O46GH2\RMIXY)ROFA8$7)H&:VD@%I>5"53B6UW%24&6-982@M M: C#+!)Q49I9=$&/_5IQJIJ[VJI:L05*P5_6%E8#3#FLA(MS$!AZ2D\JQ[:I M3$$7?;&H;%B^Q5O@VUBL>X5EZ^J'1?#>0IR47V,"M%@'[X>RSEUQ6_RU;(S? MD-KRV&-&]M #-!'WS B"KR8S\$C30H%-] 1*!*DS.$ MZ;_J84P%GEFKK]U5DE*&J,?;*%PYY0Q)-H:#^8()X? 8MH(?V :S.55X=.Z# MN7K&_DN(I,;%! V[&2WY,'&1Y+K*K/<;_LWUAG6PXVR4C'/D_T-)/YB40:DO M[,='+U(97'14,SJ9. 3C"Y5%H\9IV$Q-[F3BJNGPPM%S*SPL0LZ-UFW9[!Q> M^<>)\S%)+X!B]R9X4-^)^+/M,*XN"[:! @4#;<)$"/3C+&(PT+,<9HG%%6*/(P#G+I M;!^=V:,F'*+;U;@ZT7@H,D$Q0*F!7&WAS^IZ8A=AS8 S3TB=+Y@@@H.X=4'Z MAN0I:MA]M7A:&" DIVCN3,Y'JTE%PJ88Q#R'@"QGD;2-KBIJKDPQ+4C(B*HA M?"LL!4KDI;3+ANWHR&>IJT1\D\1=*57BA!LI/YL76I-;\!Q<(A5@WUWMA_"E MFY,W]=\D]2AKG6M$*$&.:T(N0(T![$B5]*DK9ZRT(97M7LQL+(,:#EQ2 PQI M"I^X^,7.70?H%) 8-_ *XSWN1"^>,8<8JPPG"V'N,45,' M('7GJ8X1:X>Q7>6&6D^FUX9Q'\D"0L[DTJFA1K!<^IX5(I:5+*%T!FYV: MP@GT9U\4/D%?8 "OXO];GRCX35(;@O!2*HM=^7-4VP2S8ZL.P:[ L>$ :I9* M>K.B9Y:7%N\"#N-;#2)*I2QXI_K]:]9DJ79U:RL00SRCJM62)T]Y="E-?@I' MW6C][.,U3R4Q0/TTV.,KL896J[1**:0B>Q5$HDH2W5?9:I[LH#L5I*R>,?HG M$%R&335L'^.A]GA:1\5>C)YI!1S8BI)/:31I)OUJTR0?SQV<5Z-/IZ39@E)Y M#69=4^0Y-7%(*2D@1[Y3O!JVI@;"IJBGEL&:%%@,4*O-.?-6JPZJ*JX6"I17 MO@AC(^^QJ74LYCG($%(PF!#HE9AE;&%>S-!L2[',"56<,%\XAE'(5F2H&V^'4(HBZ@IO60GK%7;OK M%S%IRWIT2V6#%;9CU7O(F$*+/+E.M98 HY5[:K#-2Y78 7/3]?$F4YQ.M#IC ML5 9M!6@X&/EQX1NT[EV0%K4I:&,B>8Y., MV%ZQC6":4F!JC(5>"AAAA5^\]3$A9E26/M2J74L M5VT,TK#D9A(TA:K578"XKDQ@TN^^84<^9O;R"@,3<*9 M;@9F;)KU9V/,J++MLSN)2(_2=S71-S=F^"K8'VH/5](/3C80A=I0$&NK#%.ON<^B]R2@ (%1NFPCWPQ.99;+V4F M$1\/1YW]&:->@>HI<6/VIV8RSCB;2$5YM%U!MDC)!(XY%X@T$1P'S(&M_+H. M"O:-3&(\*Z_LY##]-AN%8VS!Z*YX (J32D_@4F&J&ZG>:,TO*OS0(LWCBKEN M^ZX-B\0^@H TM#(O4,MFBI$H%&L[776 *TD1 P&9EX:NAR .43P0TZ1 MOFB(AR8J M1L'T$%S7G8&%QD^Y\H!8(<+RB5]RJ*UN(RJ@:?D_+N=1K**;G" XX;?;>*2# MA*E_/#N<#A>[). ,%!*/?46I?<)6/P1)NNP,J%]2E=]KBFYKCX0%$.UV4=UG MZGXASU'J$_%R]E/14C@E_T15H!KPVHRFDAU&]=R<3%! M5&2N75=/(U)3J5+L_(8^*Y,D,ZX%BTI+4[\#V[I''LB<,F?+EQ4=S>4Q@%77X;IG-L0+FH, M4[1Q<$.%4\[RJEJ=[N'Q MA=,IM@,Y=+.QZUITR(&J2;.!6%F)<<&*41%7=K MKRS>34D\J@OZ-(R5'6'R'W3XN]3_S-;/U5%0M5.AU5K12U4^OEIL702J[-&^ MA<(I!8EPZFLT*W,H$- MO]3;(3^.UJ'2^I'6E8QO/@"6 .'X:LA.-V1/V,>>18(SPC(17FAVTHLK\$MIYC?)35X;3RP,,.3JF$,9BPY]"U&CMZX MLC00OIAQBK3^FO''%05%#GN1]9]R304Q/@]K:W2LPLJW]L,+"KB:7#%/S$P M85& +SK\LXH]RD&C4D>7\K%8>",0;(XG)3/)U^C--<_7/;DY"]TRV[EC6V#X M5 .+A4D J((+($O)H[>U0C7'3.5"UU>%:A%;*U24Z?-Q CD9&XUN^8I+=&T M<><>/%MWZ$.Z0SM;=^CWZ0Y=:7*]/X.%Z[;9OY0#G192X2U:H/%Z@T!2IGC1M M@@6/#K5E>M8(27_E3$3Y0?EY9.Y'N9J@I.YI<*>-2=B-W5!P!4 M.+3-?W*D?;IH("SB=@Y6%+:]TWW6*RI?GT' B M8%&_6NE/KCM!O]1]Q) *=#Y_GKRRJ ?1H51RHIJ4ZY6I1V1F&M=]VCG;P<]4 MX4;IB+T6=Y]6(U1U(SO+!$3%E#:.(RCH@>09U$._D"0IHXW'D"L%B=4Q[FIR M167*)4]%N;M)42.*:2ODZU"W@H@"FLIRMG=,C[W2\(MR_\OU'?,3DU2)KMPD M;N)Q(ON$DL5A!92CD5I="["SB36EQ.']S"^])+%_ATS%[2GF- MTV($#AU+'>E7+@YSON"=[+:GEL*PGEF2D=A1'4]U+P[34F2>JH0!NR^N6APL MP3S8>KVQT"A7MLA\++I66#WXB\)K]&M^";/8<^I\5)^*7["?D#*YJM19*W%QIR41 MN+XS69\3"EB'J]29\J[+^=++7()W[G>S3I=AT8E=)VZ79RUA\UUDU'X2@7&; MU04NN%DDFJW*6ST#.&:"5@&CET5V_IZ(A2^,^"]G<;TJ]<:D6-&JA_H]%T4D6\TK*MHG,*ZH76^DXJ.FA:W1^4Y%0JF?U69(_D M4*'(*-9'H9($1U3-PE#-0BU1_?_9^]:NQI$D[>_S*[2U/;O5YQC6DF5;[DN= M0U-4#SL4U (U??K3>U)2"C0E2QY)AF)^_1L1>5'*EBF@;".#>BX-1DYE1D9$ M1D1&/-%(])YY#*P(UU6,L*C+>&A>4LMZ28%=\2VTF^I$%-@QU9W#34Q]3(1E M85@Z-7B<3_"F@N#=T\7'A WB4QT&N3F8;+U(MF*);O5K# V!+FU*9=)HZQ 9 M\^K.- QO.?M2,T3I^+Z3&< U%+VFKD,"F@]^O!-.6,/*3 ) O(R/',16$4)9GBM;."[5=&O(3>-R#< M#=^DYHXTX>2Q5.+EB #EP&MU55;=.(6>A8;M); IEW.#1^+C\ MJ[I1N3ZZ7ZZ@,6Z^Z#R*)$Y5 5C"A.5>14/T\25DY6[Q/E29I@(',PO9W3Y) MH0"VT'=:BL F85F-M'A_R<0ELTEB35I1]%6+?C=#3U4$IJ-)37OQUE0GPO0: MBEKJU4C43.B6,K/*+",7>*F$&YG3YV4IN@<@"H[7G/[)FT\!<1P+DS EJR/E.GC:NB.D1%BA$^#B]+Y(V/L.+F MQ3?Q[Z29@WEDTM>KPF*5(U9#1NON/K9]]S'H[CZZNX\UW'V<8-)S3Y7V*.V" M&8I)C,'][< ;+$=15,RIT+'"$DZL**(@E>&0:\0GRG<\O ;/H2>K_(QJ9/W= M7+;S1 ,EU^52 HA7YV%J>#HC<)#K)J-P.O=D"E.A\I>J@.*],S/2:/3(9#)- M\8!03K*V 1J>KK>M;^A.@2XP>62+FETBPQBMN&7_.3/ (1 1[@/K:LA@7Z[C MVT88::FHJY9+2"Y0SVR1)!I4"GI2P8#J'U&A!1E[EHM:!I$MW!-X+4".JZJ9 MZLIORK2&PAQ!?R9<,UU!I>Y0T!.H@F*BBYWAGF+/O/*:LD(P7\2HI3 B'CW- M 0H@IH;:H^!=*&?[.IZIWH5FN*Q'4,WT$8D).B MBFNJS-XJ8KSBR:&7Q^]53ZN)4(;U97(.#SU7-T(J- MK:HS[F$ 31 UP2.@J=$PH,J0ER=>P2V=@:ILL4H;W'*YGH?6YLT?I6@-5Y-9 MG#25R4Y(K4')V:&P*__%)J+X^:L("%H4X.?#A@W5X]O$C.HH/G/=? MZ,.\<0__ G_!';X'1/AIIL)I5AIWEM\O&8>=9&Q=,@[;+AF'?_YV='YQ=/CY M_/CRS_9*0W.+D5I5(L94L%&4P@''P_9"=I1]T@6"+ _5'6MDSI0J[%#VN )S M4XT'>E400YMF*HQ"*3&9C]U7ZR659LUIP2*.E: "2K$1JLDPJ*3?H\L68U&8 M*Y'(Z/65 WO#XL2HN<'Q38068]G:5:Z]7TUW)GM3Q84J"T/; 8?[!S;#^:10 M47K66?U.WT1PNR5_F^#:*7.!:E@U<"VVL"*T@W7GP76,%)J+JZZ*"KI*;"-=!]#^4Y -5!TA[$8BEV@?*IW54Y59=9S" M .5<0.%!X20[THS_NBPA5F/%" MUH&P5,,*3D57TCNCG*6ZE,9IR&Z@FL"%RJ65]A\51U5X$2(56*8*BU<0" "N M7,\8$\>P-0/9R-<\F>%]L:HZ[DD2*A'"%356(F-%[XWA&#^Y&_/Q4BUY8^&S M@E! 0AN-!ZKJ0PH#DGDMZB59ITW00\V5_[.[RA.EZ4J@XLNW)PD5#'_?P -$:L)C& ""*:R MNZU%E1!8R@_'^1Z>85@.?TL8Z#+W*)]3'0'&$P/3=FWRAQ97N.1?R!^6?(N. MSW:6S\1-]Z+Z*W/I)$5&D7K',QW/$,]<4*Z 1%00=U]XXY=G"B1O#NH(D>R9 M G@H,Z!MQS\=_Q#_'(KK84QUG69IC/G'U:V0!*N6R> RT$)=)F!DLM9J]U\R MI>^NXZV.MY !/LF\V@I.406P%F)6651B+JG,\@699ZQZC712-8X=M:SK7I!.Q MFH@=3[&EE80;P&BZ#O.+.*%*I1*U\(+/.O7<\0XRP&E6ZEBUJ+J2(>,"$WJN MLR2D-!"C(31FWM!G?H97,5..(45Z!"&DLGRA#XB$]S>2 JG9=J S>-6A<"5K MJ?,JU=<,FW<,VS&LL%6KQI&"<]AMO:-&G8?\+*0T9M5_K..CCH_(+LV*R8*O*(UZO0GJZ87E0"F >-(OKS?/D=2'"MHC[.4KF_I)B MP]2%Z!*9S34UO]#<2"1]8D/Q9K.5TMS \J[5X)FE\//Z(5+KV-BKZA[US;6F MV(J*[*P1'X(:Q%%ANNH7D*57&2475!1H7#M-GYJ$HI.!GFQ/5IA2ES]LBIK$ M7PA,)VMH*?38Y:U>EEYXX_(NN&[H0M?9'P1FDFSLLMY[^P>DEOQ.38U$'6'<'ZVX_%'[H_(^/M8N MG- 3+:AX$P&\\IA'M-FI!MM=OK+2NPDL0[V+*R:A&ZW*0"=4;MTQ2L&X4V$D M\B#A&H ]=55]5:<(ZP>,S!N0143S1LV6SI%3C69##W)$JXSG4';)-!)X32QB M@:F>9H2'CD/3#JR9%=?.+]@'F,JW;N*K.&$$ATUY.E7"MLXDPH]EP$&TSNI) MJ/W*0KY/L^"S/D]B?J/*8&,C%QA>(B!#=;E"SJ]%1KLPFK%UBJI<("2"6TZ5 MQRKQ0V0;"_UFP-4_?@,:DR.=+C=RV[F13MM3(S^=GWTZ.K\\/FIUEO ?W$HJ MX#,LF[>23"=EZO]^W"OA:CHF+6)DRCY,*-Y- XH&DC<5@>"HHI%S M/LL(>^":LQ#'QE/5H 65JZ@ J?@*D &1+VL-[46"E,H7#45W#-U.NJ=0X03Z MB$LC.EO9$[M&%LPM5!R&N76H\+\2 M="A0>M#'/J9='[NMIZP-NY2U+F6MGC0694F2W9+RHCD4\RGLE$Y^UR>+TI^D M@E&Y<&P67*QJ>B^@=1LNO#M(F,^F M[ $K7AT9M-NQ&*OI-'IGMW)I2CD\C6#YY7T M]'/7$\]^(';.XGH/Q)Q?96DK M:;IK@KXN$4[#N/6)&]VAN&+W/O$T+>Z2&[;)"ZV784)N]V#,;E^PE]@=BFME MEHML7EY;[]F7K'P13/-2KAC_WJ7>[.[)> DG(X*]\W;OW^LZ%O\.##H/OKR( M1(KN:-P"PU!YE[PLNQBN)NFN2OC89QEC< M)J/;.RF>SW4P/O(-:UM#2X^D=9+C%%F;".G+2T1=[N51'VET9C?\KB,BVOK,$OF4[_MJ5%=0&958@S" MT93!-;_=H/__,CRU+=]98+<[_P4?D=V=Q:NSS+=X/)UF-\RZ"+*R.YG:<3)U M$9%GEN\&/FO-W#I=W$5)&IND()NF%!]AR>L,E5S,V 9O2SLKL-,\Z],\\H?& MEH=/[P@FNC+X>8;])BP>9&DVC0/L@,8"W>P8M$[(\6/1&YQ;MRS'3CB?O^0@ M/UQ__#$.PX1;1]B+AQKVS.;8\(T7!?5\Q)8CF6A&'L6P"-'6A=KNA&PZX]@B M#=X#H_6L:U!5,*%;=L4+U24LHCYQP35+$IY>85^9/"ZHCQLO69Q0HYZ".LIH MHM7:^8@N;_)A,179,Q"'S8K2;.@C6I_FU"KH)N:W\*] M46532QA'?\471G% M8.[>+7;^"5AQ;45)=FN5[(MHTX.=Q2)X!/Z$C].[L)4%M2"#?U0#4PU8;968%288=GJC=8JI> R1CUE5\ Y^HOAQ&]SNG[SC44XB^"T1IZ \E M.A1->5F;+K)*D,?4^Y'ZT>,(0- >M7JCIAZWU'_HECH>EZ*_5!JJ[U)/$-$Y M*$MKCP.GPF'*].I3?H5."A*6TUY6G:/BM+8@V'&6%!FMGXMQ4]ATM1*2PNAOB(^8K]9#]M2RL2=OAF-3BR719@_[ M+@'_Y5>\--HZ(O9 M:!68BU>GF57,X5Q4K8+AL*NZ)=YBI\H9=J,%JX=L5*;;4&NK5_1(K!I'J[:Q MFGI9;EB.L@6U:"H=QD4P+PK9!_.$7\'7/^59P#G.@=9W"F>4!3[!\L&RJ)0. ML^DT+JFK,:T:%1",PF%6O)#'A;(B<%0RY4IJSIM27($LGP]Z'19VRFS;RLQMNS+[>'QZ9%T')V\?F\W1UP0;2PHRC() [?&<9;-HS'G6'\B@QC<7I\.CB_/#YN.CT> MIF7P^];Q\=,.L 5-M/A[[8@;[L 1A_\LZ>DG''5ZG T<=XN;^K C;UD%-9V) MP_VZ!FEX<\/Q^*W5/OV(7%QKXS%Y5__:?G MV..?+ZS#LX\?STZMH__[?'SY9P^>.#FX/'IO75R>'?[];VE[Z_CBXC-\].GS^>'?#BZ.+JRS#_*[UL71X>?SXY4]Z%<3I^$DUA33 MORR!AS=1YDCW_+GTSBJN&4:"93-F M_J\Y1NP+'LPQ01'^$,(/X ()=ZD .;#NX.C"8"VX%N]YP"G0.;!IK@/E@I&3 M5F*('?05_!8:E+^H!C\(RO6M#AGBMXSE%$5^'P-%*5BN5@RR"OH;="PM&T:+ M0UB$7B#.S%A@L7*%X!EB8%QYI2O>.F5W.C*O;A/HVJ!Z,1DL&'T7EQ-F%!^< M/""XEJ#:=4JONG[ 'P5[Y[AQN?#\X--YGNN;C.I2(HGAH9"&,&XF*B>8W&ZZ M:-">.$PKC$5TFW^%K<2IRG!]":=8Y9J#5SD#?S2XL^"G8N[_4SK@P34#=Q;L MH8+"T8H4<1K"O@&3XSNG0C:K=YGSJSQR\PID(S*1\]D\APD7O$$R3%539QKX M:WEM_0MDMA0A?U-.D&6^V\L>[8 )\L*\[%';O>R+HY.C0S0)/AR?'IP>'A^< M6.\/+@_:[&7+P"&SBBE>\.)%[2S+Y=WL=(8R!W(?./GSXIC\Y^I@!4%Y#QZT?.;\Z.+SR24]](!2< 7Q%&!UG!6X,HD?]N,A<*O&0. MW(01CZ+R_A;)=\O%#6V9A3 ??UYJ4^X*W"D&+,=IJ!D8=7$@1XYT=E[%8,8$ M]66T]27-;L6RYZGX.8^++^!= L]A_32P=,R+7N7W5I007F8/*7I7I9_AY'Q^ ME^'S@E/+/$O$ .()(BN;HP<9E'-RS.GJ&'WP]A(!2X<5C1SYQ34FJ-0)3')FJ"SR$?\]G["D:],;TQ+ MQ$2SRN7V$WV#GUGS&0H4W8PCL6[C@E/F)*;;?>-]/6".@,]*M.^UD>[?60F[ M55/YB&F%];MUVBU8M8Y/&%]>'I(H-&Q$I*[IM%JARDI MVQ C?434G\1R$MAMF:7[FYD!<5'"8_SJKM%H_A[E#H/?62><44!%4.^N![HG MV$=%+Q,N*0DXRY-0JY($'GVQ)[@ORD%\@_L+-BS"%572F9^Q5*PT^A9I]\?(A,QZSV, M>DLBD>4S25#2AYI[%6/'**7A/.#U>9$ZSRPP$!.E5PZF'+6MT!DXZ=S20!-5 M<"RN554 OX)#@33 )ZYA;OX\3C '%+8O^*("NZP00;-\3J&X O1'0'3^%V@) M#+G*J<$2LBR!I5^#).'Z>E8QQYMI5%1?8G7Z<19<"XTOE$F!PJ=7+L>"[?N" M$^-@3]W=FNKD$O5MCY38-!;REO,IJ!U25+B 4.7()/R*!:0#X:^S6(>],/R7 M$*OF(M!(X7>#$?#M\/ :(W486A9*%'1*3">+X&6M1]$2X*4X/Y&58?Z89F[Y M.1U^2$\M7@5P!:Q%_$G&O6G?LSMD;D&=E)>X#A&AK[+*9:ZOC#&0TK[A:5L'SFS@0N4FY>C(U4YFOYSXE"%,"=(:'_B*[8@QRGHH MKCR#P%W9HT C/ >>WA4WTIU].!$XGJ[7%+*-<9Y37Z9%5[R'@7CX&PS\KSD> MQ9*H^ 9,#1>,*\BDZ8M95>$-'-"4O2_3NSCM3AS @4<+(7$ACLHYY5:4CTNM M^%8PB>XPD @SDN\2L^S!XLC!Y<,\\VP..R]MPSTX_546OS(@Q0/D]1?6%3!& M+NQ%9"8<]2K)?-B$6^X7H+JD-E)?"RG23\8GF'2X0!@8V)*51+(XU4%CV#\T MVS#N7]33T<6TN=:<"4.F".;EHB!;LY@'B] M LX5/,PUBW%6JUJO\J+)^M$DA(91')L(6\CC$L!K?(H"X_A)R4QZ%MI_0:P MVRC\TKK]40@<\(!XC'Z#$=#FX%,_N:-9H/Y!TT=N*1C=\S1)2'W7]+S0!G$"HJL35FGEU)I="7@"- M*=0,>DE"&8'I)R5I6?/\9 F73;F-ADH)E *KYG19PG\E@NQ-V8E"+E&=2^ M%(@.]G*AJ-"Y='Z%NIPQ.I#1U&8^\+BBITDU);U&E!O/9FD$A<(L"]4TX(,B MR..9\)^$*(()%\6R<*6J'N'PN#)L3#\-OX/OR:069-6)!Z<@ZBT*"Z :T5=H MZN5D/]H_@SLH[$;T>^B40T_]]CHC28C@!-.*MR8UIO?-K*M<>+K--A@YFI6% MF6OWS1A5%,CXE1+K-9E-^ Y.7F0AYL74OM!"A;%C[LAAI>G?2TV/ARJ^,I,W M$A2RX#PLA/JF0(76I$@(87\\$+@=U6O(8Y=I3IE.D8:BE,+ MCQE&JBT7#W(T(6,Q#SH,M$DKZW@Q(8OTD7*=9(!2TV:*/FX!2Z;3,R47\"JG M$3*,?55*C&&.B# T5/I.PJL7DL(U#Y! VO6BKM.H@,&3"(R2M%!F4B$R@4#U M]E2YY\)T94PQ!TU+1; UHF,*,8#;7J,3'S6KUUA/6[ M50$TOR$[4)">B9"&KC$'\SR$XSK4%M_OF;0(D58]:5^)*!>=EEG-]!/A;&G= M 75\D9F#[$+OH5F('"=0_Z+Z'*SS*YA+JJXC!#DQU(A1$':E/F^T)Q=,A;K9 M?DQ\"-^O/!(,>D]G27;'*W,' \U@>UWQWK+OCW-(#,,/0PXP7QFS-Y.R8,?E MG0I:(\4U.#@$*H"DEB8SR%PHO6Q2&1T\0T[ MY"K+4&)9(9J#D(G0R] Z;-J9+A9;9_:F<;,BI%=:5@5&'D0Q?W4M SJ'_?30MS_L)EL< M7M]UJ;U\M]IXHC4>4T%4E@O7WO5TH=5H,#?TRE_?B(-93W\5MH9.8WUP!(Y]]*_"2'KP5!%F"?Y M&C:B)=/8!7YX9%N#W=R(EDRC]?SP@W5(F>0=3W0\H7CBKSO'$PUI7^NTHU0^ M(.*I;1=E#[VLC6Z#LE"_;V4;E9<-3/'1&_'#1C>A(2]5+GKRG(L>CWJ.,^G8 M[S5.L9.0ARS:Z_<&@V$G(:]QBIV$/&31;]V>W1_MFH0\>IF;#7:]3@%;]Q3; M*B'#_4>B33__UCQ>/OZZ 6ST[_#BUN2?_9YG12%O\[:UA\\JVVV3V@VPJCOL MV:/-QLQ?[VZ^,E8:]=S)N&.EE_?RK;/26QL\3;<]K-1>"[GCQ USHK._M9C@ M*[!$MWJ?(.Q5D=V)9;YX-<0V?-&S Y[A#DRQI<[K<+*_V72"-CBO#]$8K5IA M)Q^MD8_Q]@[+3CXZ^=@U^=CK6*>;XHOE;GM_:W'$5BO_+;I3FTMY?_/N;*EP M:%N[VY+,19/?UI+$N'U5L*YI/SX6W.^-AUM3!^UCF/;-J&/AQ[+PL&?WM^;. MM(]AVC>CCH4?R<)OW=Y@N+5TI"$\#.V M>M%SG :( R:@?Q:+N+>^[]^[_F=2)C!M*\SF6%+^$""3EYY"W';BN#W7[GIA$A7@"+[^J\M\U]S^I$ MMT^V''O\?,[V6GET.]>"\H>E1GDXD@FRN*E6$:>\M"3D0K'6UA"'9N.<%-XB MX/-@'@@))WIV_.#NVZIK0@^[@0SW[;_VA N/J#V(&D==+R7NW &!&/]@[P_4 MMS1\.0]P05; 5 C !->G)K*$UTQ]'V!@[ \3)%FA6D%4[_B#UXC7O-7&CE;( M^)S@*8T9T4()9H^6?HL="052GD+-0\1%]H57D-/PM2DAXR'^MVCX(OHE1$D% MGYRE5P1^6/6>N=-HF C#)\#FL8^_ M1N2VHBPK$8.=VK)BMR<>*E!S!29?-C3'Q;G:_<$]SSCK0B5OQ(EY\^XBQAXX M_\M2ZJ$LYT68GI)URMO,,O'P@<.X@9XN6:H"3>2@ZN:$QFVE!*]+'8A$SQF! M:QAR!"N."7,2/B",=.07?%_5-G<9SAHYSMV[94EB &HB@F580]Q$.&0X/O = M6,*'G745NJG ^9CT-,4H[7(7;>I9H[$.M.VC*%9:X M:D\B!41\5;3)".0C"EVT$+V5@5FSDAIT).I;HC4( ]$R5B\Z8N/8V%^ B*9H MI9>N<2>GV*I#/'3#\ABUK@EL25C6,%C"=(=@ZK@D-X:;VT(J)>6W_8EY8F&;Z5P476Z#:QV8HF=+G3D_IVIPKF'"S/UE.)!>@MQK#''L+ M(-!L3T*$WV"+=='HI9C]P\.JR>YHQX>>"SIM1AXY0*@56&W3N.O M"),>E1VR^):1Q9U^ARR^>M->,K+X]^G7*OWM2*>_/4K+;K;/; ?)VT'R[@2\ M8@?)V_'#[D+R;B>-8CS:=FGL\R5WMS7XVH;J@E>)F;;=5/%7Q'X[,,5.0MJ7 MB;Y9]MOB@;K)XJC3+-T#&I48%:2.U&84WFA5U?+<;S;/MY]@+"=4+_RW#C5.Y331Z&#WW:=9?=1_VEQ&Y?=%3;&GD?SC8W[E^6X]>9 >HV?XIME4^1AT@LUI? MZWR$)\<2G^'HW$ECZODLRU8?9+M\1'5\N&$^'.YO#9FA+4>!_.$[ZDQ7E/DM M*VY9BZDJ/*M:35EIB<6-03:=L5QD2F#AS"R/LYS*9U0IUJ7X=(JE=V$>8]7/ M4FDEU752?0^,A#65.0M**V%^1I5U;"8*PUB)=3P_V/M.5;4DAH[A1A"D--#5'=B>^DPBGY-3'Y.(W+F J0BGWKC,K-"G8#SQ;FGV0% M' \U#>*TF.<,JQ:I'E'4J;&O7+R]OS^J"*"^DLW+(@YA 3R_B0-Z4A, ON%6 MWQ"E>K=8M1@$ W4?5VVGM96:&E5XY MO$W4W0(S@Z!<9WEI4>EJG(*4E"B#VV>+3WEV$Q>JNE:"TUVB+&ZBTII'$=;R M8ATZ^VKE6(.+Y>;V>-_^JZBDQAK-6LUEL;+H$I\76P7DG8EQD[MZ-?.*EX8Q M? 9#DTK#-T4<2,(2U(_EO,Q F=-S%0O+*LW/^Q?[]!!7/ !C:N:0*J57'3)4 MUP_Z&.)U%"T0)C.;Y[.LH'I?65(,C$-G!K"6J,*F:OH$%)K0ET61 M!3&QUFU<7A,GA1S60H<4C @/\$<6;JZ%CP[9#"N;K'->P)P"7-))_*]Y'&*Y M,R[N0YS""K!$^A!($>,(Z^:P/Y!\\,ZX_;4AF131M'%"LKY)5LQH;]QN.='Q^C@<,[$KE*M*! MI&F1 UE%F;FT1/*0 M"$-L&(.Z)S/FADYW12("=PB42)(PTJOE0O"-./*29)<9D!I&^@'4@?,]1V8S MGSP .>,LU8 * W76H'@>HD&(A"2ECFN%/8?=@Y]C$/2KG%,JK?46'_ZO__0< MI__SH?CC@?HC?6S__*,@W?]^^ICE5S"?0V+ WUCZI6>=[A\HHGU&(1/O7AA' MS,B'+XB]1/*CB02?&B:VFK&>9,2"6 $_U^'_^'AQ-HMS3$34=6 M$ 93H"2V!N8 EF0,)B9I5GPJY5?BEP#8 *0&> (M(Y \Y)"T<0V:.?%98'J< ME]+^"_.M;P 0RYH!CUP)QH5=Q ,75;@$&S$-1$LP**G&13@*.2!NBCW^68M)"#N9J*-2I?%JNN2O WW(!OMT5X'<%^(^W?BYFJ'%.,K9VF\9P5PK$ M1PH1GR8O!28/G$O]NEK4RL3TB85M "=+D%D7H)<9*9H+.&.TSN%@^L,KP?8E M(I^!:A>VFM#!O\,[X8M<6*X74P3P027X$?XZG]*^AM81BC$8-@6Y_!8Q*YE$ M0IFA-C2/)@DNI4T>(Q(A;2]6PD[/Y?WCVC^/W>_;$NHGS>5'% M94"-)K AY&#(HU$X]V#9X/=@S](832B$4TG%>PMR["DH4XV;(W16A&-AEV!405F%,'\RMX MQO*4>XV$:S NM17)"+%($EU4*NFI*[/%",XH9E@\S;/IE&R:+/B"Q@T^0W!( MH&R_@'&"W\QE6 ^&E).4AJB[7SO3E9VJ.5C%"HA?&X(3M0GF?,K(L&8W+$Z8 M\@+-557GO['T#8.'X<[ \A/+-@,?=?,V-0Q;LED14"R6^@+6AG[S-04AD]"( M?\J]Z"ULWF XZ0W!U*2OT,/H9Y@;1>$U%AR%BGIST,&@-!S%"RY2JJF2/ 5O8% MK$X&0V>*;D@Q03?IPB,PEU@:Q7V+N5^ K0BT V%IN8EV>X"^*PBY_H<)R1/2*(JB6D2)^1%D,<^ M3M4'"9:K!_V7BRFS>7F=Y712K/8MD88A*,PT*V7H5]('A8> MU7880.V@%?!21>^ES^;?-<:U6Y5+UZZDRUTNX=K"^MS> M<+ U\/>V9LEV'/Z".=SNV4/W97#X]HZT[SFLYA*B7]Q]/LM!M2T!?<8LR^_% M_1B.MX;[L<.]9#M&^B8CC9Q=SA!O&5;,QCT)I9Q%+D_G1;1B-L]O)+UUMG8: M/%L]UM;ZC[> H]HUFS;P=\\>VZUB@%=PFFT+\.V(LB H<>)K<,W2*RY2EL7/ M!5Y0TN&G4T4Q80W61;DS[0:_Z[ 2VX.5Z+A; _-M'[>T;T8=_SZ2?]\.!\_6 MWKK#^ERW4]=X18=^GJJ]L]ZJJLL?T>-KW0G8P0RN108:^:!#'GP[6WM MDF!7!6%7Y[V+#-D)\".3R,#!]_HO0H+708XGF47RA[4#3F#YNBY1KZHT?W - M: 6L\Z0NR$;I9I86 DP)7NX!?C7-$OWA)FCBH_Q M*\;[S,JW$#.+L9!80"9,,]C^?\O?$FR$"],+XV*6%2)-.HJ_&D7PJI).I+3Z ME.QJHAV(7&BS+ED4K59FFJ@AS;&UN)YN!+TG#U9U4I'];U<[ $94616;C_LX'G4/NR7GN5BB0*ML9%5I MJ=/F=:MLV&_QB DT4MP5U#XFGLX2J@80_"K2YJLK%9'_W:.%AJ)N5.6Y\_N# M5CV)-B*N:YAB?TT"8F_!U4\K"^Y*)+^_1-+I2B1?9XGDO0>=LWC0V08:RJ,/ MNAH&TL,.NN'C#SI4LG2$[34<8=5AMW#>*-0/5%U&J\.49R#5N&$ U0_ MKRO8K;?5IFE (%GJ^>,W#U!:PZ)!(4[AP3T6P<)AKA>^:( ,J@TT4#\V<=BN M/&2KUU(Z@X(I:,II6"RX&_5[=JT4Z1)>=%>OC40#0Y5R:3)0E9SD8*\B8TDE M@> R@$Z3E79" LU"NYZJXD6S1? !%< 2TXMZ:8D)(4NZ!#^X]6*\35D5)A-H MJ\+9=_32UPXZ AOG8R$QPA"A= N%F&2W2UJ12009_C46J83T*!8"YHBFIG!; MX"SYERB.7D:=P6'*:SC2KJZID+4G4+G@]%G4"PO%U'$:)?1]1#[!XL,"&%-! M5OGS(DX1/T9%5#6U:!UJWFIH_3C,*4+S(0W, CJUBW1PL!3W-T8WS8$X/&R/\\IS)W_#$6J#Z*;MF\ MK-4 S<2KE"*M$\S]($$AEUU4EQGM["]>4\MH:+R59+YJ ]4"7L%J&+=9O-$ MU3LBEXH*\9ST*<*&@7B)!Q0_R',4OZD1;E^+%*GRT&M&N#-T.NXI1*&" M7LV,5\-Y3$Q/P$+:5L']![8+,QI*;E-R5PU:S(/KVCCK(M3%?$I@D6BGY3$% M7:R#"MCQ$R(F57EIWT\Q 5 IRG#O*90'FY%NY,AXJ["Z+E1ST$;8)P.04F)M M)2".P@A$AH._\YG4N_C2SVF,O]&@A<+J*NA/>!4IGW![^4Q M5T"5-RR/,U PPMB)F"@/UA!O4KU7% M,U\E!+.^,<7<_Z<$5Y.'N["PJZ,Z@Q%AO[0N)'XBZ(L[40NOE2W6_H/>GL[* M17+-I-QAU"N8%X3BR?'H48AR"YR)9&6D=PL0.'I_BF8% B7@5OYS'E[5$*XN MFY@\IL/Q!O:9S )]\(C]_H9$]F!'RAJDBBF/:CUU@BHS@./I4, RE I"2C-D M-H0:?)*R>P#66I,^/!>":IT+K$T#%]"$C9/BC 23,)K$/H2[CB3%@_P:L0\* M(:J5#D(06)#2FY@A@6%SIKR\SL+B)^NM_:.J[1=V.!$/S^^WSH]PD@AX+QP= MG"6$;C1&A>$TU6^Y+R8BN/?MX,=J7NJ; C4!ODB>865W )W (\LK:TUA8<@' MY(Y62! 2;;?R!C1&J:;1[37XU'"XH2-;1,+T-DPPPPZBPP"Q-#!0*T6ES+/$ MG+E)643*(6">2OG(!6AQ;Z0G+FK%#&!#84-ZTG/5FVR NM)RF"2I@?RA=E:< M1$LSP;@$[J/:$ND^?',JXGWFJN%S9(:9T)#5FWJUX.@]DU=4G>%)52BO97'" M%_@.,L\%[AZ!AF+0C4 B.5GA/J%3O)7 @A_.?M-8@H7Z]BR+)8+2PFMI*OCB MU6MKG):@.T*+"IL9+0F)7D/HO?@G%,NO$N09!5-3!7TM*1MPN"6\FB=,(;\2 MKQ66O9*$V ",!@6K1U 3.E4?U(_MNB>I])S866$3FS"=(J#!*WQI_\[0DGCD M1G/TR6O$RCE\E*Y1.>*9()8BAC: 7H$*8FF<@4E T9NZ;:((IK[J<[!=8\*N M5M7!'FDP70E"2;#%QG0+B>_9JU$) MCWB?&W*!C_*P)ZT@<>S4S2"!YS3J(T(K3 ECPQH]444E#"RF!0:NWD#\JX%8 MEL(#CC-(+A^U5'&&X)P^U>U)IK31PT@J*]1:U10%'M#EJ[41?,*ORRB2IE">-US0KZ249>CGD M?%K4GY=OT(2JQ<%P7=7(Q-6PQ74D>D)!R] 5QB!=J<\\11-QQ!$(EI@ _*C' M+*0%9SY7FZ]PC)"8<1;VI#\:8^Q)@+%OT2\X5A<%"_BZ^G.R74KRCJ05+[L^ M8+9"7I1[,9*4?D*72AM-QQ_.M-4D3KZ0@S")L7'K83=H67" M*)P6D^-GOE6XGE8"O))H\S-&<$DD?@;.1A4BY(D H<231]DYDG'D*6R>;CHD MW]./D/WHZSBN^;0TI2[Y5T9^;)G'/@'T267?TZU"%"PY?C/175'D387,WM#? ME\^&/,'V)OAKPTO)XE\(L(CIRD5J$I@W.228_0-4\YN=614&$&W6?X%6&8/I(LPTH&[ MB W(N&2"#T1 1LP 43S!J2BR7,B,X7M+L5&;J]Y3!8JI>TK/L-08=B<)Q$V6 MF/<=B>HUJ'>UH$.\),3A:5I%_3*-W/>4)7=(-ABWI^]&OJ+>-B+2DLNJKR(F M/)>&4K,!FEME@8L(4R7#ZPL Y_QJGK \01OO)@8+!-%H MC4VFZS.8GP:SMV*:#I((_O7[5_M"_<*QC$_V)%(^AF6* M )M04/L _)((/,P3\$3WP-Y.>*5:/O]#*Y8$==F//7@9O$W."+< T?]U?'!* M (3B^@?=4N%Q&Y>0,'4YMP)TVQX\3ZR.P^%%F#IY"*Y6=K@A_UPAP8L7XY\I M$$M[^J\Y$U_*\4=@6$16EU=U2KFAOUE<4ZQ/AM-4- #G)'WJ&)>&MW_J\E%< M.M476;(OG.[IU&T5QDY$ '>>F_QK:/ JU2H28G>?EEX?9UW$J>1FQ3A:136] MN"Y$\%.6X%T46G3*DU1WSCH6*&(5P+_2\I#HCU*@A8VA@\9:V1<\27HR:HJQ M:+4IM1AM0#<^U142]FS"OVABZFXB+T^[I3],\LEIU8TJZ!# MU6V9#? M20T8@9"YF(-!$S-QX5;VQYB+H$IU78YDC(LOXE0K:,1([.'>UJAN$_MH]5ACI"!$-(>.'FD")B6B@Y6(? M(_UYC:C4F,Z>]"0(,Z5%93.EI(Q+Q O9PJ.P/L_(]5$GU,'%9WU$P5"CO;[3 MLY9IM^@A"N))VEEO+[-9'%B>Z\ !E]%E(!<7IT;[&,P0J6Y/D7686&(/=3VJ M6C'Q!=]&4@%5D.B;4\NQK:!ZZ09F.D5U2./3*FNQ0!DOKY0UG2\T7)6FJ[PA M\3E.WFSJDP@/"6^(1<@0/4)Z5$6=4]GG+A&-O. MMF--@8379#%0>RV1:92/C.9#$$1=98]12K#(/<"((N8WW^HAE+*]IBSH= MJ,^8<(OD/2M8KG+0I<6O31X_2"E82+"2?LS2WN"C"WN#841I0HNK&KRA9XF1 MZZ:T4$2="&7>"BY*'JMY=:.(%P'5,N7N"=&1V5*(N%X1@V+E<2FBB_)$KIA/ M:8M;+E-/ON)M#>)^4]) *D<66ZG_2,WB&(61X668CR+?']>NS$5^!MY"@N*A M43ZI%>M]9>HF%!TDY,&0?UU8N+P_*,T;/WER+)DW"Y1'>JK&9,(A907E4-0/ M.MGA;D%"*0L=9T]Z?F%DX3D)RP^6-Q4[*GI6"*_,E&+S?KH"S6XO- 97/\/#9(PM>.(U-JL8Z-X>6%T>YO/=8;C6] M7NE4C?W"I*XR!J["=8:(L::"0J^PA>8<:9^1=U[I9 MSJG&16K;Q=$%QU=)BNA0ZB^+FVBA)@R$>Z*(.BZDB57;+1&1(_\71!NM*J%( MS>M(^COI!C,_H>I%*2E9[V")6:+*U+XEFU>NCM9L\*=<;6"F*!15JA!J]'H^ M(][*@*T$[Q04P#SD[IIER]J M(U0A#(_J*9&Q:K8!;&ZC4^_B2_Y#FF&VU])QV9\:GS/$5ZW!4GI]0T,$U73"4BI=8%YC/2['4CHZ5V.921A\'# MS&RP"?Q# >G!5OT=S!I#7Q\6\YN[KZ$1/1@87 ^_9ENKI8 MLE2_ZCUJTJ;U7U&A !V-1TL1X*T#:&;42AC+5)?^"S$#>0Z?HE/AH\>JMPF; MX^"YBQ$D6LDV;X2F,Q;G*B?K!#WG$[HV."!+92%K#!TXF>[8<,5 =HP,="1W MTH;!9LTA# _SL?#>KR3>5H!:6"E@IBUHIQH8_NI*7(R(;VD7F\@$UCDF)RXT M/ZL%\REC13H5W=I24SX_ MJ^( ALM=4*Q_1MQ8ZW&IZGG1V^62DA@J3J]B=6=1JI 9AN255U;MF"IHK3[! M"%D5VJ@;OX:YI3E>N&-&B*&ZTVB^?9"SPG9:E%V_1,7+)F=(/R<,N%C:@4*J MYHKN*O!*S8:DMX.+%DE#*3?J.T0 7LP%SZI9_<*R, +^&*0CPFD9EW<6DBU% M0, 8&3T_O+CCU:KK[Q772_1:NU5D9J@UDO6AK? M2?L5WZ#J>^@#FD-#@K)Q+VCLK**-I G&C5>00*=?+]!"7JQ5[U8+K%HORUU M ;T19YL1+-7AS^CQ&RYZC%U1<:,8DM&PRM VF;8*:=685SF:\NM2.IXL6<-+Q<1X80"H_B=(,^*8G'?=6B> M;@*$=67D;*L+4R/ (,I_!.$62^Z5N@&5TJRN])07-7,]WU?PEK@YD:&FRI() M>8#N;6'XXM3I#E\4Z6SL6MI)3GV\'M&Q851_WMH MU/\NW!08"DOS\JK282D_9I-W"C((RYC+FF/0(W%U=7QN!.;9+8;NJP(*'=:_ MFL>B^*;:=R,$5D]&ULGT(AO6F)UR_649I] Z>#F;J)R!JYRID'JUP3H-H6FL M>M(SY;?P_"8.N"2/6+%8V#TQI!R9D*GD!ZF+8*D%6!UJ1)V<5(MRRZ:-F@"Z M*K7I?K#6#53EF=*B3=ZNKT#.O;R;R2LS+/U]S'1U.R-MME!]-Q8]"KM=]+^M MEJ0:25!HTYB7:%W9N*6T#2J?V:@*H9LWV)6(RUIDD:LFBR.^/7MM4=4X\U.E M^R21@(L+FGDT]6F)B>-E8S*22>AM73Z>N MV"9Q.U-Q@S&Z5F1FD!\VQR?#PLB3T8^I>MO@FLJ[%@P#-35]"!=R3#0Z];AL MU1P6!J<&\:OW5HG8BCGH8T=VNR\*X10:%?U&/U(SH"F*R$(]^2=,W)P(_;4* MH32492)N_=%'3.'[\G$L$^UE*0Z]P@,A)-1QMT&N42/7/>1X7H5 LM6"U\"?K;IW.(!3G3 6# M4U*%G9'3!L81AC:$$P]68Y9CV,7,#Q3I5:8]3-I1/$*'(W!RJ2*I(DN4"@AD ME5_EW^I+O5IML4P.T"X*66;RE378/S,RJ**QH>Q[7PNSZ9/"(*/P5&$48@YY M9ZA(5LMN%H+.M3!#JXM1#,W(^@D1,UV>L#C==/A5 M!,00@ZAR5&N5>BIT:58LU]QT3/@4F>%B[^X9B3R[$*=97%-DPN=5J@M+BDQG M=!2]&O@2QMNN9()-RI!V/,!)?E,$*D">).Z/#+)@?8JN:!!-BI+.#?L1_+/R8@R;2B% M*Y0N0%E*6\.P3]6T%AQA9:M*# 8R.VJH+8;-*^\*C((06G.5W58SBK4W;@2: M8 X)NY5YQ$92L 31T/%UM9@JVK9Z.^0:=O^#SEP!:2&"F8/,J9(WPQ M\,=%1(?*09=JHK\ELD09-88R= N0 E%[0V8=_\I4Y-Z$? -5E"5S:7"=4M'M%,5&\_.Q :*9V3A'^5&JB0J']BFGH] M L>%PJ?273%VEMBJRG9G^@)4B%%5=)-4TE]6*=CR9*T<(WGJJ)4N$+I>UF2> MM)4+%LEL49$VD\MTL%PCC8GKQ8IC=!A.@:GH_*!*F31?A"T2WNB6C]>B#7@$:*JHQG1 GD\43'I7-^R,)MDHV MQ!=-5ADUB:JC2?HPL1 S;/0A+X\^6MX^[$0<_OH&?_/V86/^8V_O( U @>[M MO4,Z*WON[/3B[.3X_<'ET7OKP_'IP>GA\<&)=7$)'WS$C;,.3M];%Y\_?3JA MWP_._[3@X8/OIOTZZ/WNEWAZ915Y\.N;&$LE^_"/L__/V=4;$-WRUS=7.9O! M";8@%!74_M*GW_#DI9Y;SS[5!'25T*WN1?#HU]U&K).()P"?X!#]/^5)W!O'H+:C&:H#^/;T> MAD-J\Z!Z/= [0O0UZ'S6*DG4R2S_70Y5__M2J*:NES;"#XNZ\YP !U%#'AN9 M)>?\*BY$MM^GN0]/FA>T'^)\NJ@O[S4SGHO#5C"/^O!>_JEI!/HD)M)(+EG! M8\OLU,AV6^&Q-^]^(QPM3$8E7#8%CW1Q305]"097NHUJPT8)I.H3495O?2 H MJ[N-;\U@?P#_X-J?355G^0P<^A'/_"P(*W+/YCV:.K6O4):%\X?+7=# V&D]G,_A*!;?4A%;:"6TG MM,\BM!LZ77=.EE>6NHI:& S:R=1KO.JC!!@)"5O5^-6*V(U6$@L'= ]#X_O" MI)K[11S&0&_C[D7\\]9(M?E1UO4N%0?1(!5FNYF>_'W5A[U:#JQN!2.M/YDK MJ#(\])6NB@_?9O*^J1ZC12 M7?FH#23TCP5BT$UTL;AU^-%"9OUW;41,<+PHI;BO:T"Q1^0-O!8*V'YWQ'5' MW [8I2_BY'JP:?J;;J(@C=1.2CLI[0S1EHDSX<05*RP53-61=L,,=(VI?$F6^_"OUMEJP0 BYQW1D5TU(9X<0?!-==Q/N#6&E M6#,1%S;,BBC.IY@%IB+'NOY.AI"5"66$DL\P&PFYP!*QRK0'6J9-Q\+F+ZOOXQ)'JV7:("("R;%X.26O6B7!A88$E%(H1,NZI%3)ZJ^JW9%JF8$5K4MJ4L.M M"[G'%Q,4DZ] %!6&J6Z2A^U7YJ7.?UWIE*(BBV0+)>V)HE90C_3T&++/*CC) MB*R!2*8PD?U:N9@N_:\T(P8[L,@JA\7E7(!W7+&K6K4+U5F+50FG=($ L_CQI" MX8J-7J.8J2U:8]*1)U*K%LZY*OE,=!9L.EB_@P95/Y&>[,*",Q%H+^C*B[ET M:KX%RJ93\RU3\V>F9I==D:2:$@&K+. AU?12G+#@$GP!<8B+E5I4B;B6UP7I M+HPF<_?JVYYY&BQ."(\087[+[E*HBFAB^]8%2K[QL%Z<2.HFP'\J%"^QSIKJ MPWL6QPIJ40"O*BKH )J*9M"R*8 $3:B2UQL.&N$;2,)B5<62>E/3D3G/ZE6- ML4+JGD@A9 -KK\+F%@ R=X9KTL-HZ2W'#@+%XBNH+ ;^4C5\JV*MS4M9;"UL M6 ,*"9Z9IW+55]), 1?_;$T9=U&2+DK2Q3(?%\NL&@:3FY;2DYUOJ(KN]CI+N.XY+X'9 M>Q*K3%8K;<)O M:9X-UU$MZ[@G55,M#]/6FJKQBIJJ;Y#\D955R0T-55;+(VRAUDJ^M*GB2OVI0;HZL[P-9OD_S+)HW2ZI,\L[L[PSRULF MT\(L7P2$-*-ZU-%<7Z L &D:#0L7^Z8+(-X"#"Y?I J>@IEA.6!(+2CRU7$\ M\^H*@<^J]G.I\6:5@XO0%C.P"+\J*++%)^H*O3[!AB_8^_WJ"Q(M M(]2+IZ[S*S(I]ZT#V;<8+?.>6.U@R;I?&5=6D7[(8TB=4]LU?@$N=5!\"%O@3JDDM' M5!:C-VQ&-NJ_Q2<5-2MD-@HH53TK5RY-1'F0Y_$.7\Q D/>M1I^3M0BJ2;7X M>P5AG2]&IJKXC$Y8JS+LJY8EJ0GM0NP."TL""8XJL&KT&5G!@RG<(3HDC&.= M@(_K<]2Y90U=?(D:B)"EFGX!J7'$G@F@(T"5=$\7%9S3H.FZ#]\"!0P$]86S MLZ%7=0V0/S8[)5>H<+ M3\Q,,#[8\MJ2+:^)9:XT/-."+/%4("-JW#"C636:948+1&ILO8\XOXSHQ_>0 M>OC0+;4K+14F;W-GA)K^K,"VB1C+>4) LZM8Y,@4*N^R4JQ4V?+PSM:[>))V M5DU[]F+7*/^M?)B%U!?=ZTFD;0M,4WV/P*QK(!4Y&5(T+TLPJ>QJCER2,RTN6N= \.SJ8$4/F5!V0:X $R0R"U@GX1B='8 M*$D=8+(DSM#&N;_AOZ?<;"4/\N$AK>7WSZ4: MO'E"%HHX+52RA.?:>AL>B@%J_M.0W(!XI&7>E/8@'_^E#!=S-KRF5!]31AK$ M:4FPFO]4AH^?BG7#9EUCSO M^^GZ!Y+^<:DH3<3&>A+YDH+V,&ZJ#4, KULB]QH6KJP_A*2#KU^(!YM\@] MIYSNHIA/9P(=5KGK(;_A"<(87%&*]&)KWONU;:=A.PW;:=A.PS9)8NLUK(11 MI MW<,:%]6EDI"E,%UEJ0^6YRLH48#(SE@N]J;+60$-G>?U):N1--_NB$"C/ M,Y^X&JO %,!BF=&]%3; %+U=M)[N-&RG83L-VVG8)DELO8:5+CX!RQ8,(<(4 MM*R 2"CF?L'_-:<:GJQ"')"FIRRXE"6#5&'44'W86"B-E_2()R:J_^#9M%:W MFMS5JCGK!8"/(=IF-.TW\M7?60V-OP??;/R],,0#TF(;/MEZNGS7G'LIHUER M1_SU)YCSZ9RZH5DIF\*>A#S^Z4!4VIW"!V^L./SU#78)_']>/^@S%CI#FTU< M?^(R'H9>X/"(\_%HY,&CF%T([SM'3*T ,4?Z=M\N,_S)AO^^>??'T<$_CLZM M@]/WUN7Q^S^.3DYZULG^R?ZG7_ZG-I=W#45T+XUQENV%=K/2 UNZURNS'K$= M;QZF43;PY@?2K['89C4G/JB IW'?JQZ?9/]CT&71DEK"+7P:RWY/+?A#RX2^ M5X.%<3%+V!U^0O _V'%4T*Y2%&$DXR5FFSWM#:5 (P5TH0L)BYB=)X M?9;>KZ.:->]?1 K\TOXM\-6;=]]2SB<2<\-0T('MNX'MV=XHLEUW,/"C"1^S MT.O#)V'?\Q^@H,^^).P:Q,0ZC$N@G/IU43W? V?Y2X,%).T%G?S?C)>X"_IXYX/)6GF>R_/[;)_,2\3<\HT.S%_EO M$J'Q@KJD/].,WBK ,,(?R.8%T Q;Z'S%9M96<8T(7#!=)J?W[0%EHQ_CJS]N M9&EU,5X:^V%1O\T*@-6H 8.HI,G5=%]-232'^'28ZX9>C&<#ZGB]B,5(E_@S MO#?/;I'^O[ZQT19+U,_WQ ._]:KE?;<:SN^EV)N:.&UX/-S0&CM>JKRRIG[4)BX9J M2UBU:6HK"-L*GI7>@S%=B\R/Q6/J_A4 .Z.OOG6.W3JU.^YX,G=@:BCSW^W=J1S9HE:P6 MV'L#R:MO:!;4?M79/A)\CKFW>'G\_/ MCTXO+2&D/W52VD*^Z:C]@J1414S'H[^N3)#HNSW+&7@R0>)I2.^XQ-!J'K<"!?_R$8^)IR'M4_X#]51"1D-(@L$M6F,W],IHG1K_Q MR/KA?B8]4"-\R/+W\OOJO>?ZM8>B&LY@UHD7!A.'NW[('7?$.6.CR7@0>L,A M]_I>Y&[TQ!O82YQ*!NF&UCJ8>"""W W&;NAZ@>^-QK[;CVP6P;GKN,Y&!7,X M:EAKN=PKE BP^*G3PXK$F>@)E]P]LX'>NE/S.7S8^P^S9SBFEB7@E)?+0N!, M)F,P<(/AV//=R3!@]L2?A'UN]_O,]?WQ1@7>&;DM.YO:9[EVTK7#TN7Z$\ZB MX7 T=$)W$-K,"7GHCD83>S3L>P-[HT?,8-Q_,=+U,D)LQPI_I0NIM=%Q>'6N MK.9'4%YFV,L?,C8>CFQ[:+M..)J,F ?_=8(A]MC4 MTE=D>=)Q2GW%2_;5B%JMP-CHPA&=P]2@@9"!+ME7;OA,ABH:AT,[8'WFVB/7 MMBW30^TS)3JQVD6Q&@X'[J3OV8[+^^[0 M"3Q[,.3!F+DH6/VHX09[G2=\WWDQ8O4R A"?%KQ+[6FED?CJ MW!/)ED>"*Y?#J"/'B>SQ*&##P=!U/=OW!HR/O4G@^_T)MS=[*^F^N@OT3MQ; M-NU7)NZ3D1M$_F <^.[ ]2;#R6@X]ES'9H[K]T>#T4:-%F?<-J/E!<4DFNN8 MG\)A9P1?HN"<65'P9T]4WGJIZ].X:2T%KL^ASM8U\;7K,^+% V+!A@2+P9CS MB+O^. C=B3OV73<8AOV(#UGH!MS;; ZQW;:;E&<5DDZ6.UG^'EF.?-N-[,E@ MQ ?,#3S''[N!PQW/&0R,WQM+EA$[@C?^Q%X<1VQT/;M8,@M#>;\.&.7Z&D;S7AH[L3 M;IV*>%4DZKBHXZ(6*<2-7J1G,WB[Z,2*6!DS[-7:PQ*^("O*SN%KXUG\ZLQ MQ:6?$I:6!VEXI!CU]SPK"C--R+.#T3@<\] >N>'8GW"T$UG('2=R?1YN-OO. MZXW&;4O >WY>[$2_$_TMB#YW(Q8,@J'G\- -1Y[O#EU_X'(/XT"<;]8E!-&W MG;;5 +\@EW!]]^TGU*@^".;3>4*-.D(^RV$;J?-5=_'>7=9M1LF]_689MF+( M]P8_PL\)QQ] \1U,,UCTO^GSE4K1#(9S)W1A#4,^=-RQXT_Z-F/,YCZ#'P91 M US/.N_K01\VH*#LY#7?$W;[QTZ1=(KDI2@2'H2#T9A/F,T\=V('_L1VPL$P ML.V!,XET@UYDL,.I-1FV+M;=/D;SL8%3*NT!4*SV SAM53%JO1P_!$_KN)!KZCM-G;##L.X$;18/)9FVO?F_HOK9Z]$[P6S;MURGX+MA*0Q;: MHU$X<=G \<#7ZH^Y$XP0;CG<<&*EW;-;9RN]H"!4=Z/<0HWQJDC4<5''12U2 MB!MT!<_@M&4E.-E ,E;P+O^\Q4?PJS,&-7.>(&^>X\3/HL\%IVQ5L]S?=KU! MR$>1,QZY@3OT LZ\(?Y[ M+GA^KCL.V= >!>.!/_8"Y@;V9EME3'ICM_,"K5;!$7Z(4Y8&+3-G6J>OVJ>) MGD''"%;AWS(M>'\T&G+;Y>[0=8>#">_WO6 <]9D3!=ZX 5IDG8F.;2O&;Y_% MT,G6[LJ6[?G]R(NBL<-]-XI"'VQXAX># >.N/=YP<5GKLF9VXE!^8"3";&&^ M4TZ$V7I]1QV*]2]A^\Y%MPV=-+1U"9TT;&$)V_0S:X?5>Q[Q/.>A%6L >U[\ MXN?_TS;WL25,T6ZI>]SL[K=I%6=H!&V!F;"0E]!WJ!\D"UCD>KS/^#CB-H_& M03]TQOW-)H-[7E/_KA?&")T,O709\CWL)S.R^;CW;YYG;][M[;KP='Y@B\W&UIM6[(]O024,KEM!)P\OR ]<- M-=Z*J\>N0'&STKP+L,2G61HL ?OY46B[/N/N78X]":>RY@SX6/,@W+ZHV@R!QA>G[N+4-Y7_#?N:EGNW'"4!"9F$=1$)@,MXCB#E9Y<')];!Q<71 MY47+3)J'$ZCUFA*68H79W$_XPC8]6Z)F X.\>??#VCA@+6IZ1ZCV$ !F$V'/ M8^TV.[(8Z?% MMJ#%6#\*@I$_#%QFNS8;38+1<.($K#\,@G$0##=JEXZ\WG \Z;185[S=AOO< M]MWAOE 2=5S4<5&+%.+S.^\GQP>_'9\<7QX?75@'I^^MB\NSP[__[>SD_='Y MQ7_]I^?8XY^MH__[?'SY9U?WW<:BNS;>1;YJZVXLPH_OXDV/L2N7NY"6I_[$>N/QES=^RX[K@_&4WZHR'> MR#%WPOP&L-%U8D#T!H.VP4"T2P([S=%ICI9JCL ?C7T>A>-A-'('KN>/^_:P M'T4#+[)!J6P6GVK0ZWMM2\QZ[=XML$T^YZ'%O\YX6O"".C!DE"^>Q,R/D[B, M^7,GC;=. >ZBI[()C8.LR9>WQN/O"'"Z3!_P!P^Y&SL M!3QRO?%DLRTZ!SW;;2I&WDV G4[0.D%;+6@>MU&LPK[C]5W7]MBP#Z(W'@S8 MT&:!O]D<%Z!.5PB$TK_ M9]GU\4?!B$U&OL\'S![-)[T6=#G?.)LUM2QFPR=%\A-;0]B2+ZP9MC? M%#@HBZQLH8U(%\SH?*R' _PKO^IN6>-XKMUW0W_ N>>XC+F,1SX;CB;#* P& MT62S9L2@9X_;%D'MHAB=A*U5POHNR R/6-\+ Q<.=G]B^Z/("7V'V7W;W^P= MA=/SNO#%YL(7Z\.T:3CS(P'RWG#B-\"E(F5V($RQ(P ;#UK+[L)P;'=Y:U>] M9O>#>Q2O'3G!D(63R=@;N>%PY//Q(!RXT3A@W!_Y#<[4TTV;;^%$<0 M>G9@,9V:>55J)G+_W(S:>;#9'U^M-6I>CNR/V4B?-G30O2S-SH\@9VGP0CL>N'8*=XH7> M9#AF ]OMCWQWHS:+U_/&;UTU-JGB9Y]VETU=E?I\G+)W7'W MCE9C=%WA-QK8PRAP MG 8;=(T>91-JX0OCA4Z,7H48,2>(X+]C>]*?N%@O[0[L8!"&;N1-@I$_6:S.,4SV)IE18Q[\=PQY,Y>VTGS>&-!J+L/6:XY%;39 M)\6GCQ X]QQFY[G T\IV),X[Z W 3AH,):[AP6F.(VAVV+4#]DD() M3V$QT?,/]F.O?3?FK5-A[5-.S]72RW2;FK1,&(UL%K&!Y_*^&[+ &X/M$47D M08%<-?3"7F<59;]MV3OM,R(ZV=I9V7(GT3ARG2BT[9$[]*-)V!^[49]Y(]NS MN1-L%IS)&;T8V7H9D8JSU26,/?-@[T(7;;0/7YW7LJ*^JU'3#?L3'MG#\6C, M7-<#SV7(!ZX_&GO#/G?]H*'$:XU6Q*CG#-N6'/?\W-@)?R?\VQ'^@1/8SGCL M#H?CT.4#WY_PHSVE*(U!S.L.UH,HQ&PPD?N2P:^R[O^V/;1O0\VVEJ![E&0^3EU)EWXM6) M5Y-XC09CV\$+2G5Z*MK&'9Z>7QZ>_'YT>8B/9MZ=9R2WOQ\XC MW'V3]1?\2;UDK^#!7OQU[SH.0Y[^)*!J6. %:%%&DX$;C:))Z V8Z[E#SABS M!]&;=[#E.,AS)]EVWM-+9\5PT!\ZD1V-N..[W//]"0O[MN\'@S#B(]O>*5;L M/(W...ALL9T@=\?='7?O*KG;[FE<7)X=_OUO9R?OC\XO_NL_/<<>_VP=_=_G MX\L_N];?+\"F>T$DZKBHXZ(6:=L-ID,>9M-IAIY8%GSI63_7F=Y_&\>FGLW&87]D>N# MIXT!H2'S["$6=7NC433F[&'(7(ZYYO[Z]^Z>^?O]0>@&WF#L]4-W8H]8:(?, MFPR#8.P#"_H/VK,GSM\9]OK]/O[O ?M6T!HLIA?QZ/T[+HIY;>UAQ/KV8-*? M^!YWN3>81,$H' V""1#%&8\>E@;ZQ+5/>IXSZ(V6D-[;'O:&S7"RC-C&FZ5JLM-[S@$]] MGEL#N[>DE"T+24[T^/9S3L^"H6<%6<7AET'+-) *P1 M3B;<<7G@,'?@>1-G,ACQR':^!P4 M..>P0-'@E?,OI$>&X1V%+C] MR0@=&7\2C -O'/B<#*7SGD=Q$)NU4^/0G0SL<3#DPX$[]GPVB9CC M>K8[&'E\V&^( ZX3(V'0&PU?6YUT)_XMF_9K%O^A%TR8ZX^'$W?DV@/7\^V1 MXSI!,(KZ(:B#C1HUPTG/F[3-87CM<8C+G+-BGM^)% B\?0FRHK3>WL]TZEL4 MZ)(Q+[K*,8''^@@1.G"X'W@NX[.Q,[;98#SJC\Z[C]H!,C[A ?_"M65?*]#K] MX<=+]&( >\38! /8 1M&KFN[_B <#-S^*)PXMM\?-D#LK+-52 ]41LO.CHWL M4R>?G7P^33X#UW=L+QJ,&>=@T_69'4R&[L1CH[[#[?[##MQ./MC7V MS5Q')"P"AMDKXG\#_;Q9^?-"X:+Q5[L/?[::*69X)%9& .)!-IWE_)JG17S# MK20K$)2+EU868?\47=C8O@;5A_W.=?W1-]\^TN;_W*W9 0PG0^ M-.5#-)\Z 2$YY>59=,F^FFX*1R4>1+8_[+L>]\!-L=T _!3N\_[8_^XF+07M MTMXW'9:AVY2EW;I>PL_( L]MUW7ZK--G[==G3G_L,I>/P')U7.:$_@3TU1@! M$,"J'8X;,K,?9\,^5)]-&JL7.GVV>W;PTZ*B6/R MKHVZ?%>U],[JWV>X[+DP./*(.-%LV!=-'*S.PUZD[F#L^0.;^7P0LM!QPLG8 MV6A\;CCJ#=RV-?MX5CGIQ+D3Y^\1YW#( GL03B9V?^#Z?=]S'<:Q2"W$ I&F M5(UUWM7:/7?4MGC>FN7D.2T3=UT1NB:VLR@P=\M1$I"025@7D8 #W^1HYIQ= M'IQ8)\<'OQV?'%\BWB$B(*[&*6F9V?-P(K9>F\)2K#";^PEOBY/7P$1OWOVP M-@Y8BRK?$:H]K#%KS(N#-+SW2'""D TG@\%@Y W=#/AF M;V#'3L\>M*U5X@ZHA$Z_[8ZD=OKM6?6;&XY<<%G'8X^-76<8^",VX:$_# *[ M[P:\X39CC2;OR.L-QVW+3GX6E=!@&.L?_P)_8<"0U1^7[HLC-HV3NY^L_[Z, MI[RP3OFM=9Y-6?K?DGN,&V/@G1IL@R1VX]@-%JSU^/==7G.+!7@!S=([Q)M( MLQ+SYW+X.+5B&/8J9PGB"8GKZ&M><.LP2\ECI"MLT:@DAH<(-VD*4RGV-S]Q MZ^&4"A+."A!4@,+^=?_KPB5WQWW+. MOAS _]64A/D6Q:7]_E^7O_XA [+F;]XM3O.;E%D:Z72.Z8MB)LO9!P\C(>8N MU#57BIH@40_A@/JS-^^<23T%8<7L9S"[/1_IM,'*!J8-9UCDK]/R\/?CLY.ON T/R(TP]2C"H(Y?,0 MSP,0P";TEU_^A[U;DI,&R:G];OY6_5S]])?O4WC6\BG0'#CZBR*96M4OM6/H M^Y2NM2Q("T?Z)4O#.^N$,\K7P<,YR^]ZUG$:[*^0C4W/J*:#*\T+3" G].TA M9#])&(A2HVNWDI:XEESDHV=:[%LV!3F%U<4I'$'9O(#Y%CV+?PWXK!0YW[0$ M6)#\#>C"?MS(;+]][M0(1M8!:/,$[8P 3EC*=\??I2TC?A<*(XA*>O[-AN6I MICW?+%D["[\V! "?;O WWTFN]L;N>9-ANSW'6T???.OW1-J79_1M*^K!'LJ' M+$=3SOH33KC".DI#7J^,:#3RF\W\Q^W/PXW^AP>W[W?EET/:+YFG'TVAATS% MV5U&QY!?,Q*>5MW+'^\8DW?GJF*H)RY[Y4 MUZT(V67W^+W5EL-6WX[Y-)&KQ6F*U "D;?:#GCLW'0NL%LD]KQP05+3 U< M/Y>%H4+_]\^S.2VAE(,-:244V*XT4A2"[00#C&. M:%-?6P !'(_V'+5F/82VC.H<5WOIL,@FL$E@"2XTH-@>2\'!N">P> G"_LR<57_-1T61W>4CWQ]W3+]YD2;DB2&P6[9? MR9P?2]ZL09X"C#(+ ;42$B>X8@ R:8R3PFNAFSHP'D*_(;0'MZV$>V8V79+^ MCB_\&4N_E@Q2;S!V'A$BB380$T\8I9AC:9HFL!Y"X2&L1R1_D=)_? WHU%C4 M093I(GZ\.#(E;DKJ,$ BU) Y8KA0$$EGOCI6 0$"/TV0_)BSHX,)? M#!880PP)=B/T7!(LO*:4:4%$0 =BA3Z6^SSZDL#+3$9*UF0',*>+:/+BR)2X M*7%3MY#RH-9DPY=65RBMJ>!=7QG<*R_T"I?W?5,1 M(Q4W)24W*;E/5G(7W=/KN?8<4D@(YE #(JT2T 8E5U&.L(%,-4UU/8BIVR-P MR[;ISTR[32#0\86_ !!PUEEFJ 5>&0*PTQ#'W# G.0=2XX9\B8/8N+"'1==D.G;YC.ZZUOCB29ZX/''Y M.9+\%,K_6?MCQRYWQ7AZ:IZ+([:#[-Q%;-BC1V3#I,D9'U4>D6GD_X,;/QB+ M[C%T6F(L.$&2*FD]=ER9\"]21ZN3E5W/ =KCIC7/ADQBF\1V>[%E"!$FJ=40 M>P*=B+D[$ B.,"8$>'TD=V;7LW5.)+4GL.#;#\#=Q:SO94/7M8K9?8\"/HM6 M EUXOX,V'#AZL&D#1I?L_V$T'#V,.DW!NCYWECL0]"JH,$8$"**U,-0J#340 M7IF&F=V'B3ZCCD/UWL7V6>AF" M*U,1(W&L9BS- VB[ X#-]/\I"682S ,))M<8>164$\P)(8X' M(6520VJME-80<"1]!37E_9ZE7.Y+3?A_G*A@=_:'*[]^/W6T1 MS(2HX^>CP: T%*K0>KV7(B9<6: @PY!([Y12Q$+&!6%0 MC02_% Y8&4='TX M1A>36Y/0OD2AEN#QQ^3F2O.N1Z'.PQ3_FHZ_](BIG07TY2UL\!>>>L/+G M,>II;A%,XWBOW= ]''N >(SC 4>L= 1B(SA%"@!A MP H?R13'7.NS[S($UT M2V)^OF+.,!>$&T0E=X0C%);$O$7(:,DX$@V]J0]CW(NS3#,\ WTKV?OGIY8G M2ZCC)$] 7N?G+N]_\&-L_=GU2NB:0LZR?,/M>>PS,R.)GK@#J<^ M_^O!MFHO!L0Q2+ A\]>-&WM\>A&,!<$D%980H9QR) Y$Y5@Y+8$XEGL ]SCK M>E#PQ.*7<"+AQ.EP FG /3<6$Z9 AD&ROCI,\<7GB\G,D>0<\##MD%+P;Y2X\)S.3/'=#+]C]TO[WI!C?NN$XJ/97_EI]KT_XT%PRBI$QPA,JF68( M4<*%QI9C@!IJ?0]C_5-V9CI]2@Y(*'$\E-BF%=$A80)[2YC 6&H&8Z^.6/'# M'97$ 5?"V2SW:W,) "<8%$P9*2@!F"G"$@4-<0$XY1D=K80 1.3-C)B4^)*1)2+,U MTB "/:$*:><$85Y(SJQ&3@+CB';J6 T5.>CZ)/64.)'LP&XN/-F!R=OQ_$F> MN/PLO1UG[=B(51C37@MW+@]/N+T-JEEQH_*5@Z\[Y^#H(&]W$2A>')D2-R5N MZM91<=#IAJ]5T3<=@^87J9P\#P?1L0FPWCWT5N7#_O!+\='EGZ-R4C)[/45& M8 VP-1A+3[!%TD'C@"2<0$@A;.B_L=:=C.M.'C3W\8 -/A[PJO/]<+LFD0E+ M$I9T#4NX%)@B2HQ'Q".KI4- (T<050Y!^D2'<6LL@2\32\[&@O^M/YB,G>V8 MRM5! 'S&T'8RT)HRWX,69%!SQ "50).@!PGKH,4":&FY!B"I0,GKD*2VTS:[;/R^>Y(G+$Y>?(\G/ MQHS]AXM;Z6RFPC/4%Y<%[4"[/!OY*@Y<9*/)N!BK84P.6Q443GISBM9UB4R) MFQ(W=0N=4^SW9>L#75?!#N#]F&D6EY5B\:'4*ZY\Z0DIKA9*Q7( A@#D 9;( M8J,),4PIA0S4U"HH.>%/'6^*ZCX1L+5/1/0PECU&N]X7M0OLFA B(<0Q$0+$ MBAYG'2(!((3 6E*H,#7>>>T]MD_TFK9'"(9[6':]L.>%&[@I3OOL;(U6?-#P MI8,AV)3G'@%9#<,L\%I[:^/@=J*IU$QHZQU##B-&M#R:EL-D3_*M.\ =*?V_ M(TR;9/L\9/M00LJ=Y,A@QZ56A&(IC2(<>2<](E+*AOD,!U(T).E1UO6V:WM1 M(6J__"'\-59Y+SXP?=_%[S7.6%\)U53]]+#U[+I[U\EA7"PRWU1YU?2\ZQN7 M*6-&MX'8]X'1 HW&X4N!_3(US/KAME]R-:7:G89';[ MS Q4$7C_]:>/[SX&47R=._7/R_#/ [FO/V7&7@#\Z?'7WXT" ?,??EU>YL;- M>W2G"A.JE?P2A:$%!45\[?+W;R7@1!D(4CV8?2C><'[MAU]QL!OBDS:L_BZL M[D)'.ETH'];^=8F87@/Q M[S?3-RL[*C86)#9;&XN_U]GFAS]O>/FUN_\?3MFX^P]?>)G[E_=FN@W]<> ( M$QE>93=YQ.<_7E^^_OWMU;LW5Q^NWWZX_ASD-8)/E,0W$>2CJ#7TJO[ES^K7 M1W+2(#D/?J__MOAY\=,?=A/C[#%\K]&)?ZF=(;\\.$]V@Y+LL2#-!$./!C8" M8CAP[[/?G8HM5+-XXH[R^UZ<"_9JA6S\LG3>K9+SV$ZU[^];%0"4/ZS4 M8*:_[M4CTT]9RJY/91N?>L@.T$V*WFH(61*B=Z,\*FW9?X83KLC>#FV M@M^<<64^!8:]#FCKYS1_^1#Z'P9/;J@3CJWXPA,GKCIB-R$GCLW M'0DU%E]J;/Z?'2;C>Y/3D_6F+9QIC9D;M4G4M/JBYDB*1F!<\@0V;50&!!O2%:"RH@(TQ* MS3'$GA")N$>8FV.-#CN#P>%=D\6$(@E%.H(BT')C%#<8AK/_H_ M]?V1;<>4LI-*?TY]<+\X,KU8;GIF]OYO[BY >[^:U*V&-E.W<>C&_Y87.@;9 M+U([3N4CKCXTIAA?^;^.1K:X'-K/+O_:-Z[X/!K8.A_7TSF]5@A9BYBTQ&&G M 904,^@8P@Y2=B2K&?:@E"]2WTVXT/&%OTQ'8P@"\2%\[&#KZ:V[(#IPJ7J:(()F^'M:0.XEP7$>QHV#1GH-\C_WR* M"[GR?R_<962DRQH?O?U^YX:%J_<*Q,8A(Q E5!%MI&*4,J4PXP88+M31?/ZD M\]ZZ+NHE21*?C21""!54)HB8!40HH:0FSBJK".<(LH;:S8/H"[B'<->+S[NO M"1S4H1(#+EE@/=LO[D:%&L1Z@%)G*#JF)W3!^.B00OH"K::_JOXPLNO5\+>2 M6?OQ,U>^A,,"UM#/("\=A\ *:HBD4@-FK! B3EK1B!](#_'][\Y>_*_+1S_\ M>M%QT.L"3R882#!P4!@@1&DFD3$"0Z(A%@(S"C7 /EPGY*FMR]? 0%$2_F*# M-O0R/:IGXSGY/!Z9?U[HH&K;+); !Y4Z^4LZL*2.6VFS$4W.OJDQ33VF(Y0V MS"C)*""&&^48000 :QP#D.$C>44X?VZ66)*V)&V/I,U:8+P"4 $?>_ I32$W M'A,FN0H7P=$B)8 ]-WE[9IZ/WYQW>1X.^UEVH/KNDM.CT[KDL[1V?ER/>#,V MK?*CKR.37@YM^.^;<+$_?I MC;47G'&%."9<,J& 8TIJ:#U%5#8,AFRK:6QI M\ #4<0@\^F;_E #F]#N7 *8EP&"E.5':QB:#Q#"F/"4,"$.5!-2S/99C;

    L5VZ#0YC%SZC=7_??] M<,:&G^9<6%-N*4'$,HZ\\I8X8+3'5CB".1:&*;I'/_VVRFU3$N.+Y:XDT"] MH \0,7@B"EB !)!*"Z$U 9X+8*PGWDB(G>#XZ"8N(N09V[A=4H!:?T7=W'AC0VU$@L#7!!#5%2&VXL=X!KZPAL&!UV M6#4DW+'C -1%O2-)W[&E;X.7>UOQ$YX3ZC1@4G&"--3:*26<],!2P<13!^JT MKIQ 7>]:]F*#)Q3GGU<=>:@AB@8 M4)HS3:27RC&KM14">1:[/AXITQ&EM(.4=M#!G7MAN+(W6,$VK%( 8"R0A!"M M"/1<*@"]5X:0/3:_V-(B>M9I!\_ )7-53NLRDSP/"GXWJUD["&U=!*U3JCDE M%[VIF*@J+JMADH*6&1PT&RD\,4[)@%#!6D0>J:#)D&.I.K#KFLXSUF&2"'?= MP;I6@@4W%EG"B5"28&LETEX::CTTE$BUQQ89VVD5N.MQGNZK"\=)8;E3]RE_ MY3PTUJ[;54_6269,^+'BP;J1I(6%@"N((8DY*UI"*ASCQ#O$N!/'#AMQVJ2: MG!UO_90D.4ER9SROJ\7?.BH1$L ( BR2@ONJ$8,&1O4&7#\RHP>Q\^YW\4S MC'.UUXORB5M$L,J*C%'I@:G5971,3^H@;G81$4^;I!?9ZO<%"]70CED)M',. M8V&(YE0;1BU0$C*M'%$-:'<0[PMAY^E^2:DQ+TOVVN@9JX5/&8,Q @!8 4F< MQB6,,,HRYYDCEC5TUSNTJD'/M-WO,U0B#NJ">5]KU-&+H[PZIE5TP?1)-ENW MHMH-U?4U+-6 6X>T)Q0@8I"1S 4KY+%Y:T3Z.O M7>K*A]'0K(I]&VB)H5H(CXBP4')F&/.$,4DQD@V=D0_C/VG"DP[QPLF"/TE: MNNZ>W"1AW@'$G=/*(TJ$ 4)#R+!2!#CM'2*'*2,ZIQ$$W3^%LSME;7_XY:+Z MV\\9NOM^6 ?'\O"V[@90VI.FB^"F1[EU>?UELF(TZ-N'^].)]VMI"1W^!8_C MF7XX$VOFH+ZO#W]1A%'-'<,LZ#8R!H4H@0I![*7G\.AM7'"/RJ[7O3)!8PT_8'[X,:5 M_ST.%;L>O5'%S<=\]+4?,/;U_=^+Z)V?(_)EN.W7Y80(3;D71BBJN"".&N6% M]]X@1V 8]-027*8 3^LZPF7)Q:YA TO&ALVZ&$' @>H)0?8>.>".1H$7F@= MS%#LG*/!) 5[[">T95T&?CX@\5PTL#J=3&! EY_4#QD8:#B^^.:BS,9%#FSS M?;:]DU>W_<']S]F_7_=O79%]<-^R3Z-;-?SW7GFA5[B\[Z>?+?K_&W88@KMQ M>&80OLP$B&2AU0[SJ,!'A'L5=S^4]"R%.F)0PZ=PQB5GFL7 2 M!EPB5FMMJ;1*24(YX-P>;Y0GI%U/BSVB$)\B&RX5+)UM-LXS)E/BIL1-W4+* M8SL%XIF>^<'H6Y'Y?'2;]8=?7;%DFW=M(E\75+\.);=WO0[CQ9,\<7GB\G,D M^2GLA%:6Z\=);FYBMNW(1T=S,$G']V43$_<_D_Y=# AU[ 3K( MU41Z/%SK\ MJ.ZG<<-+$W@F=Q^G;/1QH(;CRZ%].^.D^IP?0[1E6%&-(;&4"4LYHPH+Z 4G M\EA9 ^&A'?=M/.,,TR3)ST&2L?$6$R(H\)X03*0#P!GJ8CM&)-@>ZW372C+# M72_/?=Y1_)-6#@4^-<[9J1U>!(8IHC[3R5K@%'$Z+[OF+"-.,X%X%^3AR)5T(; RG$"CDN-4)[;."[8>A\ J+:NW0U^_.9Y'5."F>S M_K Q;G36.9WG>TB<,?P?STVP(IWI_8R-&].9+*,,.^8EX98HP36BC+$X5+AT M!>[1X;==)4#W/7]=*@5(4)*@I#-0(CFQP M+!92$"*&P]$*[H#1B(:S:8W>A M[:"$H:Z['KL$)=W-"THY"QT*H*>4^H #N59VDX6S.O!*)AY8Y?? M!IM6'R!ULX&:9Z@(;GB+\U *G\#8AU,0U[MW/KF[*6]>^=\#9UX'QOPM\&7- MF4,ACMW\(&66$>&U(HAP:PU@ "MD&N9I'2/Y('%6$O*NOL3QA7R#$W<+*<<4 MIN$'%+SK_\QE$PI^!ROV\LMG?50Q5MA'^F/>'IG^G!C-=N89-W'#D MM--<*TV@\ (YR)$TT!J/)71'*D6!70\B/>/0A+K7'3M]!^ZV5T)K1[6W@YF(\,O_L&,BU MITP7\7&[MSGG7)W#O^ AD'L&TN]&^4(RKOR;4BX^1[&HMP?VQ"* E;2($V.< M%!(;ZJ2S6F&B&MH#'T;U@AV'[[V+[K/0VA*@)4#K&*!Q@!V3P%*F/"$&:62M ME$!!9@ )!N;1FC;RSD_=.C],.Y(VFRIB&O-:4D5,2F,_LS3V=S,V;DQC=QP[ M984W7@OB-!>6*L>I@4X9)/0>_8[;I;&C5!"3D"0AR1DB"4-.&*VH-X831[3B M5%E*@>#A9P/VV()G2R3I0=YUD[I+8-)5-^FIDSU3YOH."T_% JDDYOF3/''Y M69;$[#, ]]9[9\H4(O?=W*CA%Y?E:NRRZN:48"AU^)UX:ZW6$'E[K%@9(GM-H3R2"M_!?FM)K#LCUHO W)V]!=HR#981TG>>+RQ.7G2/+S]C:\6>52Z&7:?>D/A[%*(<[.+36L MY&=(=L(9^QD>Y!0K;@2A4DE&L,$:4F\\4P+QJ. W-=G?G[. ]R1O:(=RRD9 MR8F0P"&!PZQI(S.8&.D\]H 03X4PC',F)-( *F\?@P/ET!M ;7B:SHXD>N%./GOS7@VW[7H"^.X0ZSGD *%?& M:D5@.!>4%IHQZ*SV4 HH<&-NZA[/ Q3.@Z:DU"[C?B=Q(<%6'?SIH8N3W_@]8W+E#&CV[!1]]'I.!R-PY=4'B['&<)C M]R57@[ %>5D+-;YQAC(:EP:D"7V?3(O+PH<_C<*'L:O1JOU39@BAFH(K M^:\_?7SW47UQKW.G_GD9_IESGADXE9?L=?.7[%;E7_K#B_'H;OJ,V949BTT? M7-OY^AO,>!. /_WEA^5'OQL%"N8__+J\S(V[]^A.'R:WVN7E6_SZ2Y2D%A04 M\>4>=.091C@8S#X4;SB_]L.O&/[RY_BD5:MO(O.F^DV],>!(TQD>)7=Y!'9_WA]^?KWMU?O MWEQ]N'[[X?IS$-@(/U$4W\1#(28A-G@H?OFS^O61G#1(SGZE]!&++C6!N@Z& M]WWVNU,!1?(LGGVC_+Z7O1^:5U.N:US1*BELT3*JU;(?H-T"X\H]B%Z$=W%R M6G6D7)1'=7\X<7:%'!V9Y#^JV\#U8;']8<#NT:0(6U#\M([:!UQ,-J/)>C@O M#]@ BH.H/<3N)/_G!_!#^?M4$2A_;[G,[+$&TLA'C4)N_+AWA#W2Z SQS%\_V8FFL0=W?I#EMWJX<='A0?+B.M;NT]8Y\GMS=#4IU-9CGME^8P:B8Y*[47