0001767258-20-000011.txt : 20200316 0001767258-20-000011.hdr.sgml : 20200316 20200316083910 ACCESSION NUMBER: 0001767258-20-000011 CONFORMED SUBMISSION TYPE: 10-K PUBLIC DOCUMENT COUNT: 102 CONFORMED PERIOD OF REPORT: 20191231 FILED AS OF DATE: 20200316 DATE AS OF CHANGE: 20200316 FILER: COMPANY DATA: COMPANY CONFORMED NAME: XPEL, Inc. CENTRAL INDEX KEY: 0001767258 STANDARD INDUSTRIAL CLASSIFICATION: COATING, ENGRAVING & ALLIED SERVICES [3470] IRS NUMBER: 201117381 STATE OF INCORPORATION: NV FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-K SEC ACT: 1934 Act SEC FILE NUMBER: 001-38858 FILM NUMBER: 20715405 BUSINESS ADDRESS: STREET 1: 618 W. SUNSET ROAD CITY: SAN ANTONIO STATE: TX ZIP: 78216 BUSINESS PHONE: 210-678-3700 MAIL ADDRESS: STREET 1: 618 W. SUNSET ROAD CITY: SAN ANTONIO STATE: TX ZIP: 78216 10-K 1 a201910-kxpel.htm 10-K Document
false--12-31FY201900017672580.0010.001100000000100000000276125972761259727612597276132761327613P10YP5YP15YP9YP3YP10YP10YP5YP10Y000.0010.00110000000100000000000P4YP8YP3YP5YP5YP5YP4Y0P2Y 0001767258 2019-01-01 2019-12-31 0001767258 2020-03-16 0001767258 2019-06-28 0001767258 2019-12-31 0001767258 2018-12-31 0001767258 us-gaap:ProductMember 2018-01-01 2018-12-31 0001767258 2018-01-01 2018-12-31 0001767258 us-gaap:ServiceMember 2018-01-01 2018-12-31 0001767258 us-gaap:ServiceMember 2019-01-01 2019-12-31 0001767258 us-gaap:ProductMember 2019-01-01 2019-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2018-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2018-01-01 2018-12-31 0001767258 us-gaap:CommonStockMember 2018-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2018-01-01 2018-12-31 0001767258 us-gaap:AdditionalPaidInCapitalMember 2018-12-31 0001767258 us-gaap:AdditionalPaidInCapitalMember 2017-12-31 0001767258 us-gaap:RetainedEarningsMember 2018-01-01 2018-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2018-12-31 0001767258 us-gaap:CommonStockMember 2017-12-31 0001767258 us-gaap:ParentMember 2019-01-01 2019-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2019-01-01 2019-12-31 0001767258 us-gaap:ParentMember 2018-01-01 2018-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2017-12-31 0001767258 us-gaap:ParentMember 2018-12-31 0001767258 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001767258 us-gaap:RetainedEarningsMember 2019-12-31 0001767258 us-gaap:RetainedEarningsMember 2017-12-31 0001767258 us-gaap:RetainedEarningsMember 2019-01-01 2019-12-31 0001767258 us-gaap:ParentMember 2017-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-01-01 2019-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001767258 2017-12-31 0001767258 us-gaap:ParentMember 2019-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2019-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2017-12-31 0001767258 us-gaap:RetainedEarningsMember 2018-12-31 0001767258 xpel:LargestCustomerMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-12-31 0001767258 xpel:XPELDeMexicoS.DeR.L.DeC.V.Member 2019-12-31 0001767258 xpel:ApogeeCorp.Member 2019-12-31 0001767258 xpel:XPELAcquisitionCorp.Member 2019-12-31 0001767258 xpel:XPELGermanyGmbHMember 2019-12-31 0001767258 xpel:XPELB.VMember 2019-12-31 0001767258 xpel:ArmourfendCADLLCMember 2019-12-31 0001767258 xpel:ProtexCanadaInc.Member 2019-12-31 0001767258 xpel:XPELCanadaCorp.Member 2019-12-31 0001767258 xpel:XPELLtd.Member 2019-12-31 0001767258 country:CA 2018-12-31 0001767258 xpel:OtherGeographicRegionMember 2018-12-31 0001767258 country:CA 2019-12-31 0001767258 country:US 2018-12-31 0001767258 country:US 2019-12-31 0001767258 xpel:OtherGeographicRegionMember 2019-12-31 0001767258 srt:EuropeMember 2019-12-31 0001767258 srt:EuropeMember 2018-12-31 0001767258 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2019-01-01 2019-12-31 0001767258 us-gaap:SoftwareDevelopmentMember 2019-01-01 2019-12-31 0001767258 us-gaap:FurnitureAndFixturesMember 2019-01-01 2019-12-31 0001767258 us-gaap:TrademarksMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:EquipmentMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:ComputerEquipmentMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:TradeNamesMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2019-01-01 2019-12-31 0001767258 us-gaap:VehiclesMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:EquipmentMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:ComputerEquipmentMember 2019-01-01 2019-12-31 0001767258 us-gaap:OtherIntangibleAssetsMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:TradeNamesMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2019-01-01 2019-12-31 0001767258 xpel:ComputerEquipmentPlotterMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueTrainingMember 2019-01-01 2019-12-31 0001767258 xpel:ProductRevenueOtherMember 2018-01-01 2018-12-31 0001767258 xpel:ServiceRevenueTrainingMember 2018-01-01 2018-12-31 0001767258 xpel:ProductRevenueOtherMember 2019-01-01 2019-12-31 0001767258 xpel:ProductRevenuePaintProtectionFilmMember 2019-01-01 2019-12-31 0001767258 xpel:ProductRevenueWindowFilmMember 2018-01-01 2018-12-31 0001767258 xpel:ProductRevenuePaintProtectionFilmMember 2018-01-01 2018-12-31 0001767258 xpel:ServiceRevenueSoftwareMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueSoftwareMember 2018-01-01 2018-12-31 0001767258 xpel:ServiceRevenueInstallationLaborMember 2018-01-01 2018-12-31 0001767258 xpel:ProductRevenueWindowFilmMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueInstallationLaborMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueCutbankCreditsMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueCutbankCreditsMember 2018-01-01 2018-12-31 0001767258 xpel:TheChinaDistributorMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-12-31 0001767258 xpel:TheChinaDistributorMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2018-01-01 2018-12-31 0001767258 country:CA 2018-01-01 2018-12-31 0001767258 srt:LatinAmericaMember 2018-01-01 2018-12-31 0001767258 xpel:OtherGeographicRegionMember 2018-01-01 2018-12-31 0001767258 srt:LatinAmericaMember 2019-01-01 2019-12-31 0001767258 country:CN 2018-01-01 2018-12-31 0001767258 country:CN 2019-01-01 2019-12-31 0001767258 country:CA 2019-01-01 2019-12-31 0001767258 srt:AsiaPacificMember 2019-01-01 2019-12-31 0001767258 srt:AsiaPacificMember 2018-01-01 2018-12-31 0001767258 country:US 2018-01-01 2018-12-31 0001767258 srt:EuropeMember 2018-01-01 2018-12-31 0001767258 country:US 2019-01-01 2019-12-31 0001767258 xpel:MiddleEastAfricaMember 2018-01-01 2018-12-31 0001767258 country:GB 2018-01-01 2018-12-31 0001767258 xpel:MiddleEastAfricaMember 2019-01-01 2019-12-31 0001767258 country:GB 2019-01-01 2019-12-31 0001767258 xpel:OtherGeographicRegionMember 2019-01-01 2019-12-31 0001767258 srt:EuropeMember 2019-01-01 2019-12-31 0001767258 us-gaap:ComputerEquipmentMember 2018-12-31 0001767258 xpel:ComputerEquipmentPlotterMember 2019-12-31 0001767258 us-gaap:EquipmentMember 2018-12-31 0001767258 us-gaap:FurnitureAndFixturesMember 2018-12-31 0001767258 xpel:ComputerEquipmentPlotterMember 2018-12-31 0001767258 us-gaap:LeaseholdImprovementsMember 2018-12-31 0001767258 us-gaap:VehiclesMember 2018-12-31 0001767258 us-gaap:LeaseholdImprovementsMember 2019-12-31 0001767258 us-gaap:VehiclesMember 2019-12-31 0001767258 us-gaap:EquipmentMember 2019-12-31 0001767258 us-gaap:FurnitureAndFixturesMember 2019-12-31 0001767258 us-gaap:ConstructionInProgressMember 2019-12-31 0001767258 us-gaap:ConstructionInProgressMember 2018-12-31 0001767258 us-gaap:ComputerEquipmentMember 2019-12-31 0001767258 us-gaap:TrademarksMember 2018-12-31 0001767258 us-gaap:OtherIntangibleAssetsMember 2019-12-31 0001767258 us-gaap:NoncompeteAgreementsMember 2019-12-31 0001767258 us-gaap:CustomerRelationshipsMember 2018-12-31 0001767258 us-gaap:TrademarksMember 2019-12-31 0001767258 us-gaap:TradeNamesMember 2018-12-31 0001767258 us-gaap:SoftwareDevelopmentMember 2018-12-31 0001767258 us-gaap:NoncompeteAgreementsMember 2018-12-31 0001767258 us-gaap:OtherIntangibleAssetsMember 2018-12-31 0001767258 us-gaap:SoftwareDevelopmentMember 2019-12-31 0001767258 us-gaap:TradeNamesMember 2019-12-31 0001767258 us-gaap:CustomerRelationshipsMember 2019-12-31 0001767258 xpel:AcquisitionNotesPayableDue2022Member 2019-12-31 0001767258 xpel:AcquisitionNotesPayableDue2022Member 2018-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:TheBankOfSanAntonioMember us-gaap:LineOfCreditMember us-gaap:PrimeRateMember 2019-01-01 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:HSBCBankCanadaMember us-gaap:LineOfCreditMember 2018-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:TheBankOfSanAntonioMember us-gaap:LineOfCreditMember 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:HSBCBankCanadaMember us-gaap:LineOfCreditMember 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:HSBCBankCanadaMember us-gaap:LineOfCreditMember us-gaap:PrimeRateMember 2019-01-01 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:TheBankOfSanAntonioMember us-gaap:LineOfCreditMember 2018-12-31 0001767258 us-gaap:EmployeeStockOptionMember 2019-01-01 2019-12-31 0001767258 2017-12-22 2017-12-22 0001767258 2017-03-31 0001767258 xpel:A2018AcquisitionsMember 2018-01-01 2018-12-31 0001767258 xpel:PaintshieldLtdMember 2019-01-01 2019-12-31 0001767258 xpel:A2018AcquisitionsMember 2018-01-01 2018-12-31 0001767258 xpel:PaintshieldLtdMember 2019-01-01 2019-12-31 0001767258 xpel:PaintshieldLtdMember 2019-12-31 0001767258 xpel:SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember 2018-01-01 2018-12-31 0001767258 xpel:SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember 2018-12-31 0001767258 xpel:QuebecInc.PointeClaireMember 2018-08-01 2018-08-01 0001767258 xpel:ApogeeCorp.Member 2018-11-01 2018-11-01 0001767258 xpel:PaintshieldLtdMember 2019-12-20 2019-12-20 0001767258 xpel:QuebecIncQuebecCityMember 2018-04-01 2018-04-01 0001767258 xpel:EShieldsLLCMember 2018-06-01 2018-06-01 0001767258 xpel:CanadaInc.CalgaryMember 2018-08-01 2018-08-01 0001767258 xpel:ProtexCanadaInc.Member us-gaap:SubsequentEventMember 2020-02-01 2020-02-01 0001767258 xpel:XPELLtd.Member us-gaap:SubsequentEventMember 2020-02-01 2020-02-01 0001767258 xpel:XPELLtd.Member us-gaap:SubsequentEventMember 2020-02-01 0001767258 xpel:ProtexCanadaInc.Member us-gaap:SubsequentEventMember 2020-02-01 xpel:segment iso4217:CAD xbrli:shares iso4217:USD xbrli:pure xpel:installation_location iso4217:GBP iso4217:USD xbrli:shares
 
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, 2019
OR
TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the transition period from         to
Commission file number 001-38858
XPEL, INC.
(Exact name of registrant as specified in its charter)
Nevada
20-1117381
 
(State or other jurisdiction of incorporation or organization)
(I.R.S. Employer Identification No.)
 
 
 
618 W. Sunset Road
San Antonio
Texas
78216
 
(Address of Principal Executive Offices)
 
 
(Zip Code)
 
Registrant's telephone number, including area code: (210) 678-3700
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.001 per share
XPEL
The Nasdaq Stock Market LLC
Securities registered pursuant to Section 12(g) of the Act: None
Indicate by check mark if the Registrant is a well-known seasoned issuer, as identified in Rule 405 of the Securities Act. Yes No x

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

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  x  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 (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the Registrant was required to file such reports). Yes  x   No  




Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act. (Check one):
    
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  
The aggregate market value of the common stock held by non-affiliates of the Registrant, as of June 28, 2019, the last business day of the Registrant’s most recently completed second fiscal quarter, was approximately $89,396,831 based on the closing price of the shares of common stock on the TSX Venture Exchange.
The registrant had 27,612,597 shares of common stock outstanding as of March 16, 2020.
DOCUMENTS INCORPORATED BY REFERENCE
Document
Parts into which Incorporated
Portions of the registrant’s Proxy Statement relating to the 2020 Annual Meeting of stockholders to be held on May 7, 2020.
Part III






TABLE OF CONTENTS
 
 
Page
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 





CAUTIONARY NOTICE REGARDING FORWARD-LOOKING STATEMENTS
Certain statements made in this Annual Report on Form 10-K (“Annual Report”) include forward-looking statements, which reflect our current expectations and projections about future events and financial trends that we believe may affect our business, financial condition and results of operations. These forward-looking statements speak only as of the date of Annual Report and are subject to a number of risks, uncertainties and assumptions described under the sections entitled “Business,” “Risk Factors” and “Management’s Discussion and Analysis of Financial Condition and Results of Operations” and “Financial Statements” and elsewhere in this Annual Report.
Forward-looking statements include, but are not limited to, statements with respect to the nature of our strategy and capabilities, the vertical and regional expansion of our market and business opportunities, and the expansion of our product offering in the future. Statements that include words like “believe,” “expect,” “anticipate,” “intend,” “plan,” “seek,” “estimate,” “could,” “potentially” or similar expressions are forward-looking statements and reflect future predictions that may not be correct, even though we believe they are reasonable. These statements are not guarantees of future performance and involve risks and uncertainties that are difficult to predict or are beyond our control. A number of important factors could cause actual outcomes and results to differ materially from those expressed in these forward looking statements. Consequently, readers should not place undue reliance on such forward-looking statements. In addition, these forward-looking statements relate to the date on which they are made.
The forward-looking statements reflect our current expectations and are based on information currently available to us and on assumptions we believe to be reasonable. Forward-looking information is subject to known and unknown risks, uncertainties and other factors that may cause our actual results, activities, performance or achievements to be materially different from that expressed or implied by such forward-looking statements.
Factors to consider when evaluating these forward-looking statements include, but are not limited to:
our reliance on a single distributor in China;
political, regulatory, economic, and other risks arising from the multi-national nature of our business, including our extensive business in China;
the highly competitive nature of our industry;
our current reliance on a limited number of suppliers;
our ability to successfully introduce new products and services;
our ability to achieve benefits from our business initiatives, including identifying and completing suitable acquisitions and investments;
fluctuating revenue and operating results;
volatility in currency exchange rates;
the potential exit of current key personnel or possibility of failure to attract future qualified personnel;
significant demands related to our rapid growth;
risks related to possible future indebtedness or the availability of future financing;
risks related to internal control over financial reporting;
our status as an “emerging growth company” under the Jumpstart Our Business Startups Act of 2012;
risks related to our intellectual property;
general global and economic business conditions that may affect demand for our products;

Although we have attempted to identify important factors that could cause actual actions, events or results to differ materially from those described in forward-looking information, there may be other factors that cause actions, events or results to differ from those anticipated, estimated or intended. The forward-looking information contained herein is made as of the date of this Annual Report and, other than as required by law, we do not assume any obligation to update any forward-looking information, whether as a result of new information, future events or results or otherwise.
You should also read the matters described in “Risk Factors” and the other cautionary statements made in this Annual Report as being applicable to all related forward-looking statements wherever they appear in this Annual Report. The forward-looking statements in this Annual Report may not prove to be accurate and therefore

1



you are encouraged not to place undue reliance on forward-looking statements. You should read this Annual Report completely.
EXPLANATORY NOTE
This Annual Report also includes estimates and other statistical data made by independent parties and by us relating to market size and growth and other data about our industry. This data involves a number of assumptions and limitations, and you are cautioned not to give undue weight to such estimates. In addition, projections, assumptions and estimates of our future performance and the future performance of the markets in which we operate are necessarily subject to a high degree of uncertainty and risk.
We own or have rights to trademarks or trade names that we use in connection with the operation of our business, including our corporate names, logos and website names. In addition, we own or have the rights to copyrights, trade secrets and other proprietary rights that protect the content of our products and the formulations for such products. Solely for convenience, some of the trademarks, trade names and copyrights referred to in this report are listed without the ©, ® and ™ symbols, but we will assert, to the fullest extent under applicable law, our rights to our trademarks, trade names and copyrights.
Other trademarks and trade names in this Annual Report are the property of their respective owners.
Unless the context indicates otherwise, all references in this Annual Report to “XPEL,” the “Company,” “we,” “us,” and “our” refer to XPEL, Inc. and all of its wholly-owned and majority-owned subsidiaries.



2



Part I

Item 1. Business
Company Overview
Founded in 1997 and incorporated in Nevada in 2003, XPEL has grown from an automotive product design software company to a global provider of after-market automotive products, including automotive surface and paint protection, headlight protection, and automotive window films, as well as a provider of complementary proprietary software. In 2018, we expanded our product offerings to include architectural window film (both commercial and residential) and security film protection for commercial and residential uses, and in 2019 we further expanded our product line to include automotive ceramic coatings with XPEL FUSION PLUS. Today, we have approximately 230 employees and serve over 2,400 direct customers and several thousand indirect customers around the world.
XPEL began as a software company designing vehicle patterns used to produce cut-to-fit protective film for the painted surfaces of automobiles. In 2007, we began selling automotive surface and paint protection film products to complement our software business. In 2011, we introduced our ULTIMATE protective film product line which, at the time, was the industry’s first protective film with self-healing properties. The ULTIMATE technology allows the protective film to better absorb the impacts from rock impingement or other road debris, thereby fully protecting the painted surface of a vehicle. The film is described as “self-healing” due to its ability to return to its original state after debris infringement.
The launch of the ULTIMATE product catapulted XPEL into several years of strong revenue growth. In 2014, we began our international expansion by establishing an office in the United Kingdom. In 2015, we acquired Parasol Canada, a distributor of our products in Canada. In 2017, we established our European headquarters in The Netherlands, and expanded our product offerings to include an automotive protective window film branded as PRIME. We continued our international expansion in 2017 with the acquisition of Protex Canada Corp., or Protex Canada, a leading franchisor of automotive protective film franchises serving Canada, and opened our XPEL Mexico office. In 2018, we launched our first product offering outside of the automotive industry, a window and security film protection for commercial and residential uses. Also in 2018, we launched the next generation of our highly successful ULTIMATE line, ULTIMATE PLUS and acquired Apogee Corporation which allowed us to launch XPEL Asia based in Taiwan. In 2019, we introduced our new ceramic coating product, XPEL FUSION PLUS, and interior applications for our ULTIMATE line of products and opened our XPEL Germany office.
Products and Services
Surface and Paint Protection Film Rolls: Our primary products are paint and surface protection films. Most of the products sold are destined for automotive application which principally protect painted surfaces from rock chips, damage from bug acids and other road debris. Some of the products sold are used for non-automotive applications, such as industrial protection, screen protection or architectural protection. We sell a variety of product lines each with their own unique characteristics, warranty and intended use, including:
XPEL ULTIMATE PLUS: ULTIMATE PLUS is the flagship clear, thermoplastic polyurethane, or TPU, based product which is a self-healing, stain-resistant film with unmatched clarity and durability. ULTIMATE PLUS carries a 10-year warranty in most markets and is by far our top seller.
XPEL STEALTH: STEALTH is a satin-finished paint protection film, made with the same construction as ULTIMATE PLUS. STEALTH is designed to protect surfaces that already have a matte finish or to give otherwise glossy surfaces a matte finish.

3




TRACWRAP: TRACWRAP is a temporary TPU-based paint protection film, for both do it yourself, or DIY, and professional applications, that is designed to be used for a short period of time, including during road trips, vehicle transport or vehicles pending a full installation of our other products like XPEL ULTIMATE PLUS.
LUX PLUS: LUX PLUS is our flagship clear, TPU-based paint protection film for the Chinese market. Designed and formulated specifically for the demands of China, with excellent self-healing and stain-resistance, it is offered for sale exclusively in that market.
XPEL RX: RX Protection Film provides protection for a variety of surfaces including screens and other electronics and contains silver ions which inhibit the growth of microbes on the film’s surface. This product was launched pursuant to our acquisition of E-Shields LLC in 2018.
XPEL ARMOR: ARMOR is a thick PVC-based protection film that looks and performs like a spray-on bedliner. It is designed to resist abrasions and punctures from the most aggressive terrain.
OTHER FILMS: We sell a variety of other specialty films in smaller quantities for select customers or in certain markets, including: LUX-M, ZEUS, PROTEX, MPD and ASP in the Chinese Market, F8000 Film in Mexico and F9300 Film in Canada and Europe.
Most of our Surface and Paint Protection films are applied wet and can be installed in bulk or pre-cut using our Design Access Program, or DAP, software. While we sell some pre-cut and Do-It-Yourself products made from these rolls directly to consumers, the vast majority of the products are professionally installed.
Surface and Paint Protection film sales represented 74.9% of our consolidated revenue for the year ended December 31, 2019.
Automotive Window Film Rolls: We sell several lines of automotive window films, primarily under the XPEL PRIME brand name, which exhibit a range of performance characteristics and appearances, including:
XPEL PRIME XR PLUS: PRIME XR PLUS offers 98% infrared heat rejection thanks to multi-layer nano-particule technology. This is our most expensive flagship product with our best specifications and characteristics. It is available in a variety of visible light transmission, or VLT, levels.
XPEL RRIME XR: PRIME XR utilizes a nano-ceramic construction, blocking 88% of infrared heat and will not interfere with radio, cellular or Bluetooth signals like a metallized film.
XPEL PRIME CS: PRIME CS blocks solar heat radiation to keep vehicles at comfortable temperatures and blocks 99% of harmful UV rays. Available in both a black and neutral charcoal color, PRIME CS is designed to remain the same over the years and never fades or turns purple.
OTHER FILMS: We also sell a variety of other automotive window films both under the PRIME brand and on a private-label basis, including: PRIME X-SERIES and PRIME AP in China, PRIME HP, PRIME GL, PRIME SD and more. Generally, these products are lower cost and are sold only in certain markets.
Automotive window film sales represented 8.8% of our consolidated revenue for the year ended December 31, 2019.

4



Architectural Window Film Rolls: In 2018, we began offering an architectural glass solution for commercial and residential buildings under the VISION brand name, representing our first product set with a fully non-automotive use. Architectural window films come in several broad categories, including:
SOLAR: Solar films are designed to provide solar energy rejection. We offer a variety of films with varying colors, VLTs and price points.
SAFETY & SECURITY: Safety and Security films are clear, thick polyethylene terephithalate, or PET, films to secure glass in the event of a breakage. We offer a variety of thicknesses and offer films with varying adhesive characteristics for different types of installations.
OTHER: In addition to the main categories of SOLAR and SAFETY & SECURITY films, we also offer anti-graffiti, exterior applied and decorative films.
Architectural window film sales represented less than 1% of our consolidated revenue for the year ended December 31, 2019.
Design Access Program: A key component of our product offering is our Design Access Program software. DAP is a proprietary software and database consisting of over 80,000 vehicle applications used by the Company and its customers to cut automotive protection film into vehicle panel shapes for both paint protection film and window film products.
We commit significant resources to keep the pattern database updated with a goal toward having a pattern for every panel of every vehicle. When new vehicle models are introduced to the market, we strive to create the pattern as soon as possible. Our patterns and software increase installer efficiency and reduce waste.
Our DAP customers pay a monthly access fee to access our proprietary database. Monthly DAP subscriptions represented 2.5% of our consolidated revenue for the year ended December 31, 2019.
Installation Services: We offer installation services of our various products directly to retail and wholesale customers through our nine company-owned installation facilities in their respective markets. Our installation services are primarily automotive film installation but have grown to include architectural film installation in certain markets. Installation services (including product and labor revenue) represented 6.1% of our consolidated revenue for the year ended December 31, 2019.
Miscellaneous Products, Tools and Pre-Cut: We sell a variety of other miscellaneous product sets which include:
PRE-CUT FILM PRODUCTS: While most of our surface protection films, automotive window films and architectural window films are sold as rolls, we also offer to pre-cut them into vehicle specific shapes (if applicable) or cut them into smaller pieces or shapes to aide in the installation or to increase affordability or efficiency for our customers who cannot justify purchasing an entire roll of a given product.
XPEL FUSION PLUS CERAMIC COATING: XPEL FUSION PLUS is a hydrophobic, self-cleaning coating that can be applied to paint and paint protection film and provides additional protection to a vehicle’s painted surface to enhance its gloss and protect it from minor scratches.
TOOLS AND ACCESSORIES: We sell a variety of tools and accessories which are used in the installation of our products, including squeegees and microfiber towels, application fluids, plotter cutters, knives and more. Generally, these are offered as a service to our customers to provide one-stop shopping.
MERCHANDISE AND APPAREL: We sell a variety of XPEL-branded merchandise and apparel which helps represent and build our brand.

5



Strategic Overview
XPEL is currently pursuing several key strategic initiatives to drive continued growth. Our global expansion strategy focuses on the need to establish a local presence where possible, allowing us to better control the delivery of our products and services. In furtherance of this approach, we established our European headquarters in early 2017 to capture market share in what we believed to be an under-penetrated region. We are continuing to add locally based regional sales personnel, leveraging local knowledge and relationships to expand the markets in which we operate.
We seek to increase global brand awareness in strategically important areas, including seeking high visibility at premium events such as major car shows and high value placement in advertising media consumed by car enthusiasts, to help further expand the Company’s premium brand. For example, beginning in 2020, the Company has entered into a multi-year partnership with Team Penske to serve as the official protective film partner of Team Penske and act as primary sponsor for two or more IndyCar races per year.
XPEL also continues to expand its delivery channels by acquiring select installation facilities in key markets and acquiring international partners to enhance its global reach. As we expand globally, we strive to tailor our distribution model to adapt to target markets. We believe this flexibility allows us to penetrate and grow market share more efficiently. Our acquisition strategy centers around our belief that the closer the Company is to its end customers, the greater its ability to drive increased product sales.
We also continue to drive expansion of our non-automotive product portfolio. The Company launched its new commercial/residential window film product line in 2018, giving us access to a large new market and representing the first non-automotive product line in XPEL’s history. While there is some overlap with our existing customers, we believe that this new product line will expose the Company to several new addressable markets.
Sales and Distribution
We sell and distribute our products through independent installers, new car dealerships, third-party distributors, Company-owned installation centers, Protex Canada’s franchisees and on-line.
Independent Installers/New Car Dealerships
We primarily operate by selling a complete turn-key solution directly to independent installers and new car dealerships, which includes XPEL protection films, installation training, access to our proprietary DAP software, marketing support and lead generation. For the year ended December 31, 2019, approximately 54% of the Company’s consolidated revenue was through this channel.
While we are principally a product company, we also offer a suite of services to complement our products for our customers, including access to our proprietary DAP software. We believe that this software greatly enhances installation efficiency and reduces film waste – a highly valuable feature to our customers, as their highest cost tends to be labor. We also provide marketing and lead generation for our customers by featuring them in our dealer locator on our website. To be considered an “authorized dealer” (and thereby have end customers referred to them), independent installers must complete our four-day, hands-on training class and meet other requirements. Trainees are certified upon completion. Additionally, XPEL works closely with independent installers and new car dealerships to support local events in their area.
XPEL also offers 24/7 customer service for independent installers and new car dealerships where we provide installation, software and training support via our website and telephone technical support services.
Finally, our customers in the independent installer/new car dealership channel tend to be smaller in nature, and consequently frequently experience “just-in-time” inventory needs. The Company maintains inventory in several locations globally to meet these needs.

6



Distributors
In various parts of the world, XPEL operates primarily through third party distributors under written agreements with the Company to develop a market or a region under our supervision and direction. These distributors may sell to other distributors or customers who ultimately install the product on an end customer’s vehicle. Due to the nature of this channel, product margins are generally less than other channels. For the year ended December 31, 2019, approximately 34% of the Company’s consolidated revenue was through this channel.
We operate through a sole distributor, Shanghai Xing Ting Trading Co., Ltd., which we refer to as the China Distributor, in China under a distribution agreement. Approximately 23.5% of our consolidated revenue for the year ended December 31, 2019, was derived from sales to the China Distributor.
Through our distribution agreement with the China Distributor entered into on May 31, 2018, the China Distributor has rights to promote, market, distribute, sell and install our products in China. Additionally, we have granted the non-exclusive right to the China Distributor to use our software in connection with customers’ purchases of our products. The China Distributor places orders with us on a prepaid basis at a price set by us, which we may change with 30 days’ notice. Certain of our products have minimum purchase requirements that increase annually.
We have also granted the China Distributor a non-exclusive license to use our brands to promote sales of our products to end-users. The distribution agreement applies to separate product categories, distinguished by their exclusive or non-exclusive relationship with the China Distributor, each for a term of five years, each of which will automatically renew for up to three additional five year periods unless otherwise terminated by either party with 60 days’ notice.
We consider our relations with the China Distributor to be good, but the loss of our relationship could result in the delay of the distribution and a decrease in marketing of our products in China. For more information, see Part I, Item 1A—Risk Factors—We rely on one distributor of our products and services in China. The loss of this relationship, or a material disruption in sales by this distributor, could severely harm our business and “A significant percentage of our revenue is generated from our business in China, a market that is associated with certain risks.”
Company-Owned Installation Centers
XPEL operates nine company-owned installation centers: six in the United States, two in Canada and one in the United Kingdom. These locations serve wholesale and retail customers in their respective markets. This channel represented approximately 6% of the Company’s consolidated revenue for the year ended December 31, 2019.
Some of our Company-owned installation centers are located in geographic areas where we also serve customers in our independent installer/dealership channel, which could be perceived to generate channel conflict. However, we believe these channels have a synergistic relationship with our Company-owned centers supporting independent installers and dealerships by supplementing inventory needs, assisting with overflow work and providing additional customer service and employee training. We believe this channel strategy benefits our goal of generating the most product revenue possible.
Franchisee Channel
XPEL’s acquisition of Protex Canada in 2017 added its franchisee network to our distribution portfolio. Franchisees are authorized to sell our automotive paint film and window film. A franchisee must pay a franchise fee to be assigned an exclusive area in which to offer sale and installation of protective films. As the franchisor, Protex Canada provides brand, training and other support to franchisees. Franchisees pay a royalty to Protex Canada based on percent of revenues. Franchisees, as part of their franchise agreement,

7



are required to purchase paint protection and window films from XPEL. The revenue from this channel which consists of franchise fee and royalty revenue represented approximately 1% of the Company’s consolidated revenue for the year ended December 31, 2019.
Online and Catalog Sales
XPEL offers certain products such as paint protection kits, car wash products, after-care products and installation tools via its website. Revenues from this channel are negligible but we believe that by offering these products on our website, we increase brand awareness. The revenue from this channel represented approximately 2% of the Company’s consolidated revenue for the year ended December 31, 2019.
Competition
The Company principally competes with other manufacturers and distributors of automotive protective film products. While the Company considers itself a product company competing with other product companies, the Company believes its suite of services which accompany the Company’s product offerings including its software, marketing and lead generation to its customers and customer service provide for substantial differentiation from its competitors. Within the market for surface and paint protection film, our principal competitors include Eastman Chemical Company (under the LLumar and Suntek brands) and several other smaller companies. For more information, see Part I, Item 1A—Risk Factors—The after-market automotive product supply business is highly competitive. Competition presents an ongoing threat to the success of our Company.
Suppliers
The Company’s paint and surface protection, automotive window films and architectural window films are sourced from five suppliers. Approximately 80% of the Company’s inventory purchases in the year ended December 31, 2019 were sourced from one of these suppliers, entrotech, which we refer to as the primary supplier.
Through our Amended and Restated Supply Agreement that we entered into with our primary supplier in March 2017, we have exclusive rights to commercialize, market, distribute and sell its automotive aftermarket products through March 21, 2020, at which time the term automatically renews for successive two year periods thereafter unless terminated at the option of either party with two months’ notice. During such term, we have agreed to use commercially reasonable efforts to purchase a minimum of $5,000,000 of products quarterly from this primary supplier, with a yearly minimum purchasing requirement of $20,000,000. Under the terms of the Supply Agreement, the primary supplier has retained all of the rights to its technology and products relating to protective films subject to the Company’s exclusive right to commercialize, market, distribute and sell products manufactured by the primary supplier to the automotive aftermarket including to new car dealerships. Since no notice of termination has been given by either us or the primary supplier, the Supply Agreement will automatically renew on March 21, 2020 for an additional two-year term.
The primary supplier manufactures our products according to mutually agreed-upon specifications, quality assurance programs and other standards that are mutually established. We consider our relations with the primary supplier to be good, but the loss of our relationship with the primary supplier could result in the delay of the manufacture and delivery of some of our automotive film products. For more information, see Part I, Item 1A—Risk Factors—A material disruption from our primary supplier could cause us to be unable to meet customer demands or increase our costs.
Film Conversion Process
The Company receives its surface and paint protection, automotive window film and architectural window film in a variety of roll forms, including short and master roll format.  For some of the Company’s products,

8



the Company engages in a variety of converting activities in its facilities in San Antonio, Texas and in other locations.  Depending on the product and the format in which it was received, conversion activities may include: inspection, slitting, rewinding or boxing.  Additionally, for some of the Company’s products, including pre-cut film products, the Company performs further conversion which includes cutting film into specific shapes using computer aided cutting equipment.
Government Regulation and Legislation
The manufacturing, packaging, storage, distribution, advertising and labeling of our products and our business operations all must comply with extensive federal, state and foreign laws and regulations and consumer protection laws. Governmental regulations also affect taxes and levies, capital markets, healthcare costs, energy usage, international trade, immigration and other labor issues, all of which may have a direct or indirect negative effect on our business and our customers’ and suppliers’ businesses. We are also required to comply with certain federal, state and local laws and regulations and industry self-regulatory codes concerning privacy and date security. These laws and regulations require us to provide customers with our policies on sharing information with third parties, and advance notice of any changes to these policies. Related laws may govern the manner in which we store or transfer sensitive information, or impose obligations on us in the event of a security breach or inadvertent disclosure of such information. International jurisdictions impose different, and sometimes more stringent, consumer and privacy protections.
Our products are subject to export controls, including the U.S. Department of Commerce’s Export Administration Regulations and economic and trade sanctions regulations administered by the U.S. Treasury Department’s Office of Foreign Asset Controls, and similar laws that apply in other jurisdictions in which we distribute or sell our products. Export control and economic sanctions laws include prohibitions on the sale or supply of certain products and services to certain embargoed or sanctioned countries, regions, governments, persons and entities. In addition, various countries regulate the import of certain products, through import permitting and licensing requirements, as well as customs, duties and similar charges, and have enacted laws that could limit our ability to distribute our products. The exportation, reexportation, and importation of our products, including by our partners, must comply with these laws or else we may be adversely affected, through reputational harm, government investigations, penalties, and a denial or curtailment of our ability to export our products. Complying with export control and sanctions laws for a particular sale may be time consuming and may result in the delay or loss of sales opportunities. If we are found to be in violation of U.S. sanctions or export control laws, it could result in substantial fines and penalties for us and for the individuals working for us. Changes in export, sanctions or import laws, may delay the introduction and sale of our product in international markets, or, in some cases, prevent the export or import of our products to certain countries, regions, governments, persons or entities altogether, which could adversely affect our business, financial condition and operating results.
We are also subject to various domestic and international anti-corruption laws, such as the U.S. Foreign Corrupt Practices Act and the U.K. Bribery Act, as well as other similar anti-bribery and anti-kickback laws and regulations. These laws and regulations generally prohibit companies and their intermediaries from making improper payments to non-U.S. officials for the purpose of obtaining or retaining business. Our exposure for violating these laws would increase to the extent our international presence expands and as we increase sales and operations in foreign jurisdictions.
Proposed or new legislation and regulations could also significantly affect our business. For example, the European General Data Protection Regulation (“GDPR”) took effect in May 2018 and applies to all of our products and services used by people in Europe. The GDPR includes operational requirements for companies that receive or process personal data of residents of the European Union that are different from those previously in place in the European Union. In addition, the GDPR requires submission of breach notifications to our designated European privacy regulator and includes significant penalties for non-compliance with the notification obligation as well as other requirements of the regulation. The California Consumer Privacy Act, or AB 375, was also recently passed and creates new data privacy rights for users, effective in 2020. Similarly, there are a number of legislative proposals in the European Union, the United

9



States, at both the federal and state level, as well as other jurisdictions that could impose new obligations in areas affecting our business. In addition, some countries are considering or have passed legislation implementing data protection requirements or requiring local storage and processing of data or similar requirements that could increase the cost and complexity of delivering our services.
Environmental Matters
We are subject to a variety of federal, state, local and foreign environmental, health and safety laws and regulations governing, among other things, the generation, storage, handling, use and transportation of hazardous materials; the emission and discharge of hazardous materials into the environment; and the health and safety of our employees. We have incurred and expect to continue to incur costs to maintain or achieve compliance with environmental, health and safety laws and regulations. To date, these costs have not been material to the Company.
Intellectual Property
We regard some of the features of our DAP software, our brands and marketing message, and our documentation as proprietary and rely on copyright, patent, and trademark and service mark laws and trade secret protection, such as confidentiality procedures, contractual arrangements, non-disclosure agreements and other measures to protect our proprietary information. Our intellectual property is an important and valuable asset that enables us to gain recognition for our products, services, and DAP software and enhance our competitive position and market value.
We have obtained United States copyright registrations for our DAP software applications and also have two patents in the United States related to our DAP software.
We also have trademarks registrations in the United States and other countries.
XPEL®, XPEL & DESIGN®, XPEL ULTIMATE®, PELTI®, PROTEX® and TRACWRAP® are registered trademarks of the Company.
XPEL™, XPEL FUSION™, XPEL ULTIMATE PLUS™, XPEL STEALTH™, XPEL RX™, XPEL ARMOR™, XPEL PRIME XR™, XPEL PRIME XR PLUS™, XPEL PRIME CS™, PRIME X-SERIES™, PRIME AP™, PRIME GL™, PRIME SD™, PROTEX (STYLIZED)™, ASP™, LUX™, LUX PLUS™, LUX-M™, ZEUS™, F8000 Film™, F9300 Film™ and MPD™ are trademarks of the Company.
Available Information
XPEL was incorporated in Nevada in 2003. Our street address is 618 W. Sunset Road, San Antonio, Texas 78216 and our phone number is (210) 678-3700. The address of our website is www.xpel.com. The inclusion of the Company’s website address in this annual report does not include or incorporate by reference the information on or accessible through the Company’s website, and the information contained on or accessible through the website should not be considered as part of this annual report.
The Company will make its Annual Reports on Form 10-K, Quarterly Reports on Form 10-Q, Current Reports on Form 8-K and other reports (and amendments to those reports) filed or furnished pursuant to Section 13(a) of the Securities Exchange Act of 1934 available on the Company’s website as soon as reasonably practicable after the Company electronically files or furnishes such materials with the Securities and Exchange Commission (“SEC”). Interested persons can view such materials without charge under the “Investor Relations” section and then by clicking “Corporate Filings / Financial Results” on the Company’s web site. The SEC also maintains a website at www.sec.gov that contains reports, proxy statements and other information about SEC registrants, including XPEL.

10



XPEL, Inc. is an “emerging growth company” and a “smaller reporting company” within the meaning of Rule 12b-2 under the Securities Exchange Act.
Item 1A. Risk Factors
This Annual Report contains forward-looking statements that involve risks and uncertainties. Our actual results could differ materially from those anticipated in these forward-looking statements as a result of certain factors, including the risks we face as described below and elsewhere in this Annual Report. See “Cautionary Notice Regarding Forward-Looking Statements.”
Risks Related to Our Business and Industry
The after-market automotive product supply business is highly competitive. Competition presents an ongoing threat to the success of our Company.
We face significant competition from a number of companies, many of whom have greater financial, marketing and technical resources than us, as well as regional and local companies and lower-cost manufacturers of automotive and other products. Such competition may result in pressure on our profit margins and limit our ability to maintain or increase the market share of our products.
Additionally, as we introduce new products and as our existing products evolve, or as other companies introduce new products and services, we may become subject to additional competition. Our principal competitors have significantly greater resources than us. This may allow our competitors to respond more effectively than we can to new or emerging technologies and changes in market requirements. Our competitors may also develop products, features, or services that are similar to ours or that achieve greater market acceptance, may undertake more far-reaching and successful product development efforts or marketing campaigns, or may adopt more aggressive pricing policies. Certain competitors could use strong or dominant positions in one or more markets to gain a competitive advantage against us.
We believe that our ability to compete effectively depends upon many factors both within and beyond our control, including:
the usefulness, ease of use, performance, and reliability of our products compared to our competitors;
the timing and market acceptance of products, including developments and enhancements to our products or our competitors’ products;
customer service and support efforts;
marketing and selling efforts;
our financial condition and results of operations;
acquisitions or consolidation within our industry, which may result in more formidable competitors;
our ability to attract, retain, and motivate talented employees;
our ability to cost-effectively manage and grow our operations;
our ability to meet the demands of local markets in high-growth emerging markets, including some in which we have limited experience; and
our reputation and brand strength relative to that of our competitors.
If we are unable to differentiate or successfully adapt our products, services and solutions from competitors, or if we decide to cut prices or to incur additional costs to remain competitive, it could have a material adverse effect on our business, financial condition, results of operations and cash flows.

11



A material disruption from the primary supplier could cause us to be unable to meet customer demands or increase our costs.
Pursuant to an Amended and Restated Supply Agreement dated as of March 21, 2017, between us and our primary supplier, which we refer to as the Supply Agreement, we have engaged the primary supplier to act as the primary source of our automotive paint protection film products. During the year ended December 31, 2019, approximately 80% of our annual inventory purchases were purchased from the primary supplier.
Any failure by the primary supplier to perform its obligations under the Supply Agreement, including a failure to provide sufficient supply of our products to satisfy customer demand, could have a material adverse effect on our revenue, operating results and operating cash flows.
Additionally, if our relationship with the primary supplier were to terminate or if operations at its manufacturing facility were to be disrupted as a result of significant equipment failures, natural disasters, earthquakes, power outages, fires, explosions, terrorism, adverse weather conditions, labor disputes or other reasons, we may be unable to fill customer orders or otherwise meet customer demand for our products, and such disruption could increase our costs and reduce our sales, any of which could have a material adverse effect our business, financial condition, results of operations and cash flows.
We rely on one distributor of our products and services in China. The loss of this relationship, or a material disruption in sales by this distributor, could severely harm our business.
The Company distributes all of its products in China through one distributor, with sales to such distributor representing 23.5% of our consolidated revenue for the year ended December 31, 2019. The China Distributor places orders with us on a prepaid basis at a price set by us, which we may change with 30 days’ notice. The China Distributor then generates orders, sells and distributes our products to its end customers in China.
Any failure by the China Distributor to perform its obligations, including a failure to procure sufficient orders of our products to satisfy customer demand or a failure to adequately market our products, could have a material adverse effect on our business, financial condition, results of operations and cash flows.
Because of our dependence on the China Distributor, any loss of our relationship or any adverse change in the financial health of such distributor that would affect its ability to distribute our products may have a material adverse effect on our business, financial condition, results of operations and cash flows.
A significant percentage of our revenue is generated from our business in China, a market that is associated with certain risks.
Our business in China is operated through a single distributor. During the year ended December 31, 2019, approximately 23.5% of our consolidated revenue was generated in China, more than any other country in which we operate, and we expect such portion will increase with the expansion of our business in China. However, there are risks generally associated with doing business in China, including:
Significant political and economic uncertainties
Historically, the Chinese government has exerted substantial influence over the business activities of private companies. Under its current leadership, the Chinese government has been pursuing economic reform policies that encourage private economic activity and greater economic decentralization. There is no assurance, however, that the Chinese government will continue to pursue these policies, or that it will not significantly alter these policies from time to time without notice. Furthermore, the Chinese government continues to exercise significant control over the Chinese economy through regulation and state ownership. Changes in China’s laws, regulations or policies, including those affecting taxation, currency, imports, or the nationalization of private enterprises could have a material adverse effect on our business, results of operations and financial condition. Furthermore, government actions in the future could have a significant

12



effect on economic conditions in China or particular regions thereof, and could require us to divest ourselves of any interest we then hold in Chinese properties.
Impact from the “Coronavirus”
China has experienced an outbreak of the coronavirus that is affecting the entire country. If the virus continues to spread, or China is unable to effectively control the outbreak of the coronavirus, our sales could be materially adversely affected. In addition, as the coronavirus has spread to other regions of the world, our sales to non-China regions could also be materially adversely affected.
Trade policy
The current U.S. and China administrations have recently reached a trade agreement after several months of negotiations. If such agreement were violated by either party, we could be forced to increase the sales price of our products, reduce margins, or otherwise suffer from trade restrictions levied by the Chinese government that may have a material adverse effect on our business.
Limited recourse in China
While the Chinese government has enacted a legal regime surrounding corporate governance and trade, its experience in implementing such laws and regulations is limited. It is unclear how successful any attempt to enforce commercial claims or resolve commercial disputes will be. The resolution of any such dispute may be subject to the exercise of considerable discretion by the Chinese government and its agencies and forces unrelated to the legal merits of a particular matter or dispute may influence their determination.
Additionally, any rights we may have to specific performance, or to seek an injunction under China law, in either of these cases, are severely limited, and without a means of recourse by virtue of the Chinese legal system, we may be unable to prevent these situations from occurring. The occurrence of any such events could have a material adverse effect on our business, financial condition and results of operations.
Uncertain interpretation of law
There are substantial uncertainties regarding the interpretation and application of the laws and regulations in the greater China area, including, but not limited to, the laws and regulations governing our business. China’s laws and regulations are frequently subject to change due to rapid economic and social development and many of them were newly enacted within the last ten years. The effectiveness of newly enacted laws, regulations or amendments may be delayed, resulting in detrimental reliance by foreign investors. New laws and regulations that affect existing and proposed future businesses may also be applied retroactively.
The Chinese government has broad discretion in dealing with violations of laws and regulations, including levying fines, revoking business permits and other licenses and requiring actions necessary for compliance. In particular, licenses and permits issued or granted to our Company by relevant governmental bodies may be revoked at a later time by higher regulatory bodies. We cannot predict the effect of the interpretation of existing or new Chinese laws or regulations on our businesses. We cannot assure you that our current ownership and operating structure would not be found to be in violation of any current or future Chinese laws or regulations. As a result, we may be subject to sanctions, including fines, and could be required to restructure our operations or cease to provide certain services. In addition, any litigation in China may be protracted and result in substantial costs and diversion of resources and management attention. Any of these or similar actions could significantly disrupt our business operations or restrict us from conducting a substantial portion of our business operations, which could materially and adversely affect our business, financial condition and results of operations.

13



General global economic and business conditions affect demand for our products.
We compete in various geographic regions and markets around the world. We expect to experience fluctuations in revenue and results of operations due to economic and business cycles. Important factors for our business and the businesses of our customers include the overall strength of the economy and our customers’ confidence in the economy, unemployment rates, availability of consumer financing and interest rates. Our products and services are discretionary purchases for most consumers. Consumers are generally more willing to make discretionary purchases on products and services such as ours during periods of favorable general economic conditions. While we attempt to minimize our exposure to economic or market fluctuations by offering a balanced mix of end markets and geographic regions, any of the above factors, individually or in the aggregate, or a significant or sustained downturn in a specific end market or geographic region could reduce demand for our products and services, which could have a material adverse effect on our business, financial condition, results of operations and cash flows.
We are highly dependent on the automotive industry. A prolonged or material contraction in automotive sales and production volumes could adversely affect our business, results of operations and financial condition.
Automotive sales and production are cyclical and depend on, among other things, general economic conditions consumer spending, vehicle demand and preferences (which can be affected by a number of factors, including fuel costs, employment levels and the availability of consumer financing). As the volume of automotive production and the mix of vehicles produced fluctuate, the demand for our products may also fluctuate. Prolonged or material contraction in automotive sales and production volumes, or significant changes in the mix of vehicles produced, could cause our customers to reduce purchase of our products and services, which could adversely affect our business, results of operations and financial condition.
If changes to our existing products or introduction of new products or services do not meet our customers’ expectations or fail to generate revenue, we could lose our customers or fail to generate any revenue from such products or services and our business may be harmed.
We may introduce significant changes to our existing products or develop and introduce new and unproven products or services, including using products with which we have little or no prior development or operating experience. The trend of the automotive industry towards autonomous vehicles and car- and ride-sharing services may result in a rapid increase of new and untested products in the aftermarket automotive industry. If new or enhanced products fail to attract or retain customers or to generate sufficient revenue, operating margin, or other value to justify certain investments, our business may be adversely affected. If we are not successful with new approaches to monetization, we may not be able to maintain or grow our revenue as anticipated or recover any associated development costs.
If we were unable to maintain our network of sales and distribution channels, it could adversely affect our net sales, profitability and the implementation of our growth strategy.
Our ability to continue to grow our business depends on our ability to maintain effective sales and distribution channels in each of the markets in which we operate. We make use of a variety of distribution channels, including independent installers, new car dealerships, distributors and franchisees. We believe that this network of distribution channels enables us to efficiently reach consumers at a variety of points of sale. If we are not able to maintain our sales and distribution channels, we could experience a decline in sales, as well as reduced market share, as consumers may decide to purchase competing products that are more easily obtainable. The failure to deliver our products in accordance with our delivery schedules could harm our relationships with independent installers and new car dealerships, distributors and franchisees, which could adversely affect our net sales, profitability and the implementation of our growth strategy.

14



We depend on our relationships with independent installers and new car dealerships and their ability to sell and service our products. Any disruption in these relationships could harm our sales.
The largest portion of our products are distributed through independent installers and new car dealerships. We do not have direct control over the management or the business of these independent installers and new car dealerships, except indirectly through terms as negotiated with us. Should the terms of doing business with them change, our business may be disrupted, which could have an adverse effect on our business, financial condition and results of operations.
Because some of our independent installer and new car dealership customers also may offer our competitors’ products, our competitors may incent the independent installers and new car dealerships to favor their products. We do not have long-term contracts with a majority of the independent installers and new car dealerships, and the independent installers and new car dealerships are not obligated to purchase specified amounts of our products. In fact, all of the independent installers and new car dealerships buy from us on a purchase order basis. Consequently, with little or no notice, the independent installers and new car dealerships may terminate their relationships with us or materially reduce their purchases of our products. If we were to lose any significant independent installers or new car dealerships, for among other reasons that the independent installers and new car dealerships acquired or were acquired by a competitor such that they became a direct competitor, then we would need to obtain one or more new independent installers or new car dealerships to cover the particular location or product line, which may not be possible on favorable terms or at all.
The Company may incur material losses and costs as a result of product liability and warranty claims.
The Company faces an inherent risk of exposure to product liability claims if the use of its products results, or is alleged to result, in personal injury and/or property damage. If the Company manufactures a defective product, it may experience material product liability losses. Whether or not its products are defective, the Company may incur significant costs to defend product liability claims. It also could incur significant costs in correcting any defects, lose sales and suffer damage to its reputation. Product liability insurance coverage may not be adequate for the liabilities and may not continue to be available on acceptable terms.
The Company is also subject to product warranty claims in the ordinary course of business. If the Company sells poor-quality products or uses defective materials, the Company may incur unforeseen costs in excess of what it has reserved in its financial statements.   These costs could have a material adverse effect on the Company’s business, financial condition, operating cash flows and ability to make required debt payments.
We sell our products under limited warranties. We have established a liability reserve under these warranties based on a review of historical warranty claims. Our liability for warranties as of the year ended December 31, 2019 was $65,591. The warranty reserve may not be sufficient to cover the costs associated with future warranty claims. A significant increase in these costs could adversely affect the Company’s operating results for future periods in which these additional costs materialize. Warranty reserves may need to be adjusted from time to time in the future if actual warranty claim experience differs from estimates. Any of the foregoing matters could have a material adverse effect on the Company’s business, financial condition, operating cash flows and ability to make required debt payments.
Harm to our reputation or the reputation of one or more of our products could have an adverse effect on our business.
We believe that maintaining and developing the reputation of our products is critical to our success and that the importance of brand recognition for our products increases as competitors offer products similar to our products. We devote significant time and incur substantial marketing and promotional expenditures to create and maintain brand loyalty as well as increase brand awareness of our products. Adverse publicity about us or our brands, including product safety or quality or similar concerns, whether real or perceived,

15



could harm our image or that of our brands and result in an adverse effect on our business, as well as require resources to rebuild our reputation.
We may not be able to identify, finance and complete suitable acquisitions and investments, and any completed acquisitions and investments could be unsuccessful or consume significant resources.
Our business strategy is expected to include acquiring businesses and making investments that complement our existing business. We expect to analyze and evaluate the acquisition of strategic businesses or product lines with the potential to strengthen our industry position or enhance our existing set of product and service offerings. We may not be able to identify suitable acquisition candidates, obtain financing or have sufficient cash necessary for acquisitions or successfully complete acquisitions in the future. Acquisitions and investments may involve significant cash expenditures, debt issuance, equity issuance, operating losses and expenses. Acquisitions involve numerous other risks, including:
diversion of management time and attention from daily operations;
difficulties integrating acquired businesses, technologies and personnel into our business;
difficulties in obtaining and verifying the financial statements and other business information of acquired businesses;
inability to obtain required regulatory approvals;
potential loss of key employees, key contractual relationships or key customers of acquired companies or of ours;
assumption of the liabilities and exposure to unforeseen liabilities of acquired companies; and
dilution of interests of holders of our common stock through the issuance of equity securities or equity-linked securities.
Our revenue and operating results may fluctuate, which may make our results difficult to predict and could cause our results to fall short of expectations.
As a result of the rapidly changing nature of the markets in which we compete, our quarterly and annual revenue and operating results may fluctuate from period to period. These fluctuations may be caused by a number of factors, many of which are beyond our control. For example, changes in industry or third-party specifications may alter our development timelines and consequently our ability to deliver and monetize new or updated products and services. Other factors that may cause fluctuations in our revenue and operation results include but are not limited to:
any failure to maintain strong customer relationships;
any failure of significant customers, including distributors, to renew their agreements with us;
variations in the demand for our services and products and the use cycles of our services and products by our customers;
changes in our pricing policies or those of our competitors; and
general economic, industry and market conditions and those conditions specific to our business.
For these reasons and because the market for our services and products is relatively new and rapidly changing, it is difficult to predict our future financial results.
If we are unable to retain and acquire new customers, our financial performance may be materially and adversely affected.
Our financial performance and operations are dependent on retaining our current customers and acquiring new customers. A number of factors could negatively affect our customer retention or acquisition.

16



For example, potential customers may request products or services that we currently do not provide and may be unwilling to wait until we can develop or source such additional features.
Other factors that affect our ability to retain or acquire new customers include customers’ increasing use of competing products or services, our failure to develop and introduce new and improved products or new products or services not achieving a high level of market acceptance, changes in customer preference or customer sentiment about the quality or usefulness of our products and services, including customer service, consolidation or vertical integration of our customers, adverse changes in our products mandated by legislation, regulatory authorities, or litigation, including settlements or consent decrees, and technical or other problems preventing us from delivering our products in a rapid and reliable manner.
If we are unable to retain and acquire new customers, our financial performance may be materially and adversely affected.
We are exposed to political, regulatory, economic and other risks that arise from operating a multinational business.
Sales outside of the U.S. for the year ended December 31, 2019 accounted for approximately 53% of our consolidated revenue. Accordingly, our business is subject to the political, regulatory, economic and other risks that are inherent in operating in numerous countries. These risks include:
changes in general economic and political conditions in countries where we operate, particularly in emerging markets;
relatively more severe economic conditions in some international markets than in the U.S.;
the difficulty of enforcing agreements and collecting receivables through non-U.S. legal systems;
the difficulty of communicating and monitoring standards and directives across our global facilities;
the imposition of trade protection measures and import or export licensing requirements, restrictions, tariffs or exchange controls;
the possibility of terrorist action affecting us or our operations;
the threat of nationalization and expropriation;
difficulty in staffing and managing widespread operations in non-U.S. labor markets;
changes in tax treaties, laws or rulings that could have a material adverse impact on our effective tax rate;
limitations on repatriation of earnings;
the difficulty of protecting intellectual property in non-U.S. countries; and
changes in and required compliance with a variety of non-U.S. laws and regulations.
Our success depends in part on our ability to anticipate and effectively manage these and other risks. We cannot assure you that these and other factors will not have a material adverse effect on our international operations or on our business as a whole.
Volatility in currency exchange rates could have a material adverse effect on our financial condition, results of operations and cash flows.
Our financial statements reflect translation of items denominated in non-U.S. currencies to U.S. dollars. Therefore, if the U.S. dollar strengthens in relation to the principal non-U.S. currencies from which we derive revenue as compared to a prior period, our U.S. dollar-reported revenue and income will effectively be decreased to the extent of the change in currency valuations and vice-versa. Fluctuations in foreign currency exchange rates, most notably the strengthening of the U.S. dollar against other various foreign currencies in markets where we operate, could continue to have a material adverse effect on our reported revenue in

17



future periods. In addition, currency variations could have a material adverse effect on margins on sales of our products in countries outside of the U.S.
The loss of one or more of our key personnel, or our failure to attract and retain other highly qualified personnel in the future, could harm our business.
We currently depend on the continued services and performance of our executive officers, Ryan L. Pape, our President and Chief Executive Officer, and Barry R. Wood, our Senior Vice President and Chief Financial Officer, neither of whom has an employment agreement. Loss of key personnel, including members of management as well as key product development, marketing, and sales personnel, could disrupt our operations and have an adverse effect on our business. As we continue to grow, we cannot guarantee that we will continue to attract the personnel we need to maintain our competitive position. As we grow, the incentives to attract, retain, and motivate employees may not be as effective as in the past. If we do not succeed in attracting, hiring, and integrating effective personnel, or retaining and motivating existing personnel, our business could be adversely affected.
If we fail to manage our growth effectively, our business, financial condition and results of operations may suffer.
We have experienced rapid growth over the last five years and we believe we will continue to grow at a rapid pace. This growth has put significant demands on our processes, systems and personnel. We have made and we expect to make further investments in additional personnel, systems and internal control processes to help manage our growth. In addition, we have sought to, and may continue to seek to grow through strategic acquisitions. Our growth strategy may place significant demands on our management and our operational and financial infrastructure. Our ability to manage our growth effectively and to integrate new technologies and acquisitions into our existing business will require us to continue to expand our operational, financial and management information systems and to continue to retain, attract, train, motivate and manage key employees. Growth could strain our ability to develop and improve our operational, financial and management controls, enhance our reporting systems and procedures, recruit, train and retain highly skilled personnel, maintain our quality standards; and maintain our customer satisfaction.
Managing our growth will require significant expenditures and allocation of valuable management resources. If we fail to achieve the necessary level of efficiency in our organization as it grows or if we are unable to successfully manage and support our rapid growth and the challenges and difficulties associated with managing a larger, more complex business, this could cause a material adverse effect on our business, financial position and results of operations, and the market value of our shares could decline.
We may seek to incur substantial indebtedness in the future.
Our business strategy may include incurring indebtedness in the future. If this occurs, our degree of leverage could have important consequences for the holders of our Common Stock, including increasing our vulnerability to general economic and industry conditions; requiring a substantial portion of cash flow from operations to be dedicated to the payment of principal and interest on our indebtedness, therefore reducing our ability to use our cash flow to fund our operations, capital expenditures and future business opportunities; restricting us from making strategic acquisitions or causing us to make non-strategic divestitures; limiting our ability to obtain additional financing for working capital, capital expenditures, product development, debt service requirements, acquisitions and general corporate or other purposes; and limiting our ability to adjust to changing market conditions and placing us at a competitive disadvantage compared to our competitors who are less highly leveraged. Any of the above consequences could result in a material adverse effect on our business, financial condition and results of operations.

18



We cannot be certain that additional financing will be available on reasonable terms when required, or at all.
From time to time, we may need additional financing. Our ability to obtain additional financing, if and when required, will depend on investor demand, our operating performance, the condition of the capital markets, and other factors. To the extent we draw on credit facilities, if any, to fund certain obligations, we may need to raise additional funds and we cannot assure investors that additional financing will be available to us on favorable terms when required, or at all. If we raise additional funds through the issuance of equity, equity-linked or debt securities, those securities may have rights, preferences, or privileges senior to the rights of our Common Stock, and existing stockholders may experience dilution.
The preparation of our financial statements will involve the use of estimates, judgments and assumptions, and our financial statements may be materially affected if such estimates, judgments and assumptions prove to be inaccurate.
Financial statements prepared in accordance with United States Generally Accepted Accounting Principles (“U.S. GAAP”) require the use of estimates, judgments and assumptions that affect the reported amounts. Different estimates, judgments and assumptions reasonably could be used that would have a material effect on the consolidated financial statements, and changes in these estimates, judgments and assumptions are likely to occur from period to period in the future. Significant areas of accounting requiring the application of management’s judgment include, but are not limited to, determining the fair value of our assets and the timing and amount of cash flows from our assets. These estimates, judgments and assumptions are inherently uncertain and, if they prove to be wrong, we face the risk that charges to income will be required. Any such charges could significantly harm our business, financial condition, results of operations and the price of our securities. Estimates and assumptions are made on an ongoing basis for the following: revenue recognition, capitalization of software development costs, impairment of long-lived assets, inventory reserves, allowances for doubtful accounts, revenue recognition, fair value for business combinations, and impairment of goodwill.
If we fail to maintain an effective system of internal control over financial reporting, we may not be able to accurately report our financial results or prevent fraud. As a result, stockholders could lose confidence in our financial and other public reporting, which would likely negatively affect our business and the market price of our Common Stock.
Effective internal control over financial reporting is necessary for us to provide reliable financial reports and prevent fraud. Any failure to implement required new or improved controls, or difficulties encountered in their implementation could cause us to fail to meet our reporting obligations. In addition, any testing conducted by us, or any testing conducted by our independent registered public accounting firm may reveal deficiencies in our internal control over financial reporting that are deemed to be material weaknesses or that may require prospective or retroactive changes to our consolidated financial statements or identify other areas for further attention or improvement. Inferior internal controls could also cause investors to lose confidence in our reported financial information, which is likely to negatively affect our business and the market price of our Common Stock.
We will be required to disclose changes made in our internal controls and procedures on a quarterly basis and our management will be required to assess the effectiveness of these controls annually. However, for as long as we are an “emerging growth company” under the JOBS Act, our independent registered public accounting firm will not be required to attest to the effectiveness of our internal control over financial reporting pursuant to Section 404(b) of the Sarbanes-Oxley Act of 2002 (the “Sarbanes-Oxley Act”). We could be an “emerging growth company” for up to five years. An independent assessment of the effectiveness of our internal controls could detect problems that our management’s assessment might not. Undetected material weaknesses in our internal controls could lead to financial statement restatements and require us to incur the expense of remediation.

19



We are an “emerging growth company,” and we cannot be certain if the reduced SEC reporting requirements applicable to emerging growth companies will make our Common Stock less attractive to investors.
We are an “emerging growth company” as defined in the JOBS Act. We will remain an “emerging growth company” until the earliest to occur of (i) the last day of the fiscal year during which our total annual revenue is $1.07 billion, (ii) the last day of the fiscal year following the fifth anniversary of the date of the first sale of common equity securities pursuant to an effective registration statement, (iii) the date on which we have, during the previous three-year period, issued more than $1 billion in non-convertible debt securities and (iv) the date on which we are deemed to be a “large accelerated filer” under the Exchange Act. We intend to take advantage of exemptions from various reporting requirements that are applicable to most other public companies, whether or not they are classified as “emerging growth companies,” including, an exemption from the provisions of Section 404(b) of the Sarbanes-Oxley Act requiring that our independent registered public accounting firm provide an attestation report on the effectiveness of our internal control over financial reporting and reduced disclosure obligations regarding executive compensation in our periodic reports and proxy statements and exemptions from the requirements of holding a non-binding advisory vote on executive compensation and stockholder approval of any golden parachute payments not previously approved.
If some investors find our Common Stock less attractive because we intend to rely on certain of these exemptions and benefits under the JOBS Act, there may be a less active, liquid or orderly trading market for our Common Stock and the market price and trading volume of our Common Stock may be more volatile and decline significantly.
Violations of the U.S. Foreign Corrupt Practices Act and similar anti-corruption laws outside the U.S. could have a material adverse effect on us.
The Foreign Corrupt Practices Act, or FCPA, and similar anti-corruption laws in other jurisdictions generally prohibit companies and their intermediaries from making improper payments to government officials or other persons for the purpose of obtaining or retaining business. Recent years have seen a substantial increase in anti-bribery law enforcement activity, with more frequent and aggressive investigations and enforcement proceedings by both the U.S. Department of Justice and the SEC, increased enforcement activity by non-U.S. regulators and increases in criminal and civil proceedings brought against companies and individuals. Our policies mandate compliance with these anti-bribery laws. We operate in many parts of the world that are recognized as having governmental and commercial corruption and in certain circumstances, strict compliance with anti-bribery laws may conflict with local customs and practices. We cannot assure you that our internal control policies and procedures will always protect us from reckless or criminal acts committed by our employees or third-party intermediaries. In the event that we believe or have reason to believe that our employees or agents have or may have violated applicable anti-corruption laws, including the FCPA, we may be required to investigate or have outside counsel investigate the relevant facts and circumstances, which can be expensive and require significant time and attention from senior management. Violations of these laws may require self-disclosure to governmental agencies and result in criminal or civil sanctions, which could disrupt our business and result in a material adverse effect on our reputation, business, financial condition, results of operations and cash flows.
Our failure to satisfy international trade compliance regulations, and changes in U.S. government sanctions, could have a material adverse effect on us.
Our global operations require importing and exporting goods and technology across international borders on a regular basis. Our policy mandates strict compliance with U.S. and non-U.S. trade laws applicable to our products. Nonetheless, our policies and procedures may not always protect us from actions that would violate U.S. or non-U.S. laws. Any improper actions could subject us to civil or criminal penalties, including material monetary fines, or other adverse actions including denial of import or export privileges, and could damage our reputation and business prospects.

20



Changes in U.S. administrative policy, including changes to existing trade agreements and any resulting changes in international relations, could adversely affect our financial performance.
As a result of changes to U.S. administrative policy, among other possible changes, there may be (i) changes to existing trade agreements; (ii) greater restrictions on free trade generally; and (iii) significant increases in tariffs on goods imported into the United States. The United States, Mexico and Canada signed the United States-Mexico-Canada Agreement ("USMCA"), the successor agreement to the North American Free Trade Agreement ("NAFTA"). It is expected that the USMCA will become effective by January 1, 2021. On January 15, 2020, the United States signed the "Phase 1" trade agreement with China. It remains unclear what the U.S. administration or foreign governments, including China, will or will not do with respect to tariffs, the USMCA or other international trade agreements and policies. A trade war, other governmental action related to tariffs or international trade agreements, changes in U.S. social, political, regulatory and economic conditions or in laws and policies governing foreign trade, manufacturing, development and investment in the territories and countries where we currently manufacture and sell products or any resulting negative sentiments towards the United States could adversely affect our business, financial condition, operating results and cash flows.
Changes in the United Kingdom's economic and other relationships with the European Union could adversely affect us.
On January 31, 2020, the United Kingdom formally withdrew from the European Union. Pursuant to the Withdrawal Agreement Bill, the United Kingdom will remain in the European Union's free market and customs union until December 31, 2020. On January 1, 2021, the United Kingdom will withdraw from the free market and customs union, and trade between the European Union and the United Kingdom will be subject to border controls. During the transition, the parties will negotiate a free trade agreement to manage future trade in goods and services. However, it is possible that an agreement will not be reached within the transition period, and there remains significant uncertainty about the terms of the future trade relationship between the European Union and the United Kingdom.
We have significant operations in both the European Union and the United Kingdom. In the year ended December 31, 2019, our European Union (excluding the United Kingdom) and United Kingdom sales totaled $7,419,524 and $3,784,535, respectively. Expressed as a percentage of total consolidated revenue for the year ended December 31, 2019, these figures represented 5.7% and 2.9%, respectively. Our supply chain and that of our customers are highly integrated across the European Union and the United Kingdom, and we are highly dependent on the free flow of goods in those regions. The ongoing uncertainty and imposition of border controls on trade between the European Union and the United Kingdom could negatively impact our competitive position, supplier and customer relationships and financial performance. The ultimate effects of the United Kingdom's withdrawal from the European Union on us will depend on the specific terms of any agreement the European Union and the United Kingdom reach to provide future access to each other’s respective markets.
Intellectual property challenges may hinder our ability to develop and market our products, and we may incur significant costs in our efforts to successfully avoid, manage, defend and litigate intellectual property matters.
Proprietary technologies, customer relationships, trademarks, trade names and brand names are important to our business. Intellectual property protection, however, may not preclude competitors from developing products similar to ours or from challenging our names or products. Further, as we expand on a multi-national level and in some jurisdictions where the protection of intellectual property rights is less robust, the risk of competitors duplicating our proprietary technologies increases. We may need to spend significant resources monitoring our intellectual property rights, and we may or may not be able to detect infringement by third parties. Assertions by or against us relating to intellectual property rights, and any inability to protect these rights, could have a material adverse effect on our business, financial condition, results of operations and cash flows.

21



We may face design limitations or liability associated with the use of products for which patent ownership or other intellectual property rights are claimed.
From time to time we are subject to claims or inquiries regarding alleged unauthorized use of a third party’s intellectual property and cannot be certain that the conduct of our business does not and will not infringe the intellectual property rights of others. An adverse outcome in any intellectual property litigation could subject us to significant liabilities to third parties, require us to license technology or other intellectual property rights from others, require us to comply with injunctions to cease marketing or using certain products or brands, or require us to redesign, re-engineer, or re-brand certain products or packaging, any of which could affect our business, financial condition and operating results. Third-party intellectual property rights may also make it more difficult or expensive for us to meet market demand for particular product or design innovations. If we are required to seek licenses under patents or other intellectual property rights of others, we may not be able to acquire these licenses on acceptable terms, if at all. In addition, the cost of responding to an intellectual property infringement claim, in terms of legal fees and expenses and the diversion of management resources, whether or not the claim is valid, could have a material adverse effect on our business, results of operations and financial condition.
If the model of selling vehicles through dealerships in North America changes dramatically, our revenue could be impacted.
Generally, most vehicles in North America are sold through franchised new car dealerships. These dealerships have a strong profit motive and are historically very good at selling accessories and other products. Going forward, if the dealership model were to change in the form of fewer franchised dealerships, or the possibility of manufacturer owned distribution, the prospects in this channel may diminish. Manufacturer-owned sales of new cars might become harder to penetrate or more streamlined with fewer opportunities to sell accessories. This would make us more reliant on our independent installer, retail-oriented channel, which requires more work to create consumer awareness.
If ride-sharing or alternate forms of vehicle ownership gain in popularity, our revenue could be impacted.
If ride-sharing or alternate forms of vehicle ownership including rental, ride-sharing, or peer-to-peer car sharing gain in popularity, consumers may own fewer vehicles per household, which would reduce our revenue. More vehicles entering a ride-sharing or car-sharing fleet could have an uncertain impact on our revenue as consumers are more or less interested in accessorizing vehicles they own that are in the ride-sharing fleet.
Environmental regulation, changing fuel-economy standards and/or a drive toward electric vehicles could impact our revenue.
Many manufacturers have announced plans to transition from internal-combustion engines into electric vehicle platforms over the coming years. There is no assurance that consumers will respond positively to this fundamental shift in the auto industry, should it occur. If the change results in vehicles that are more utilitarian or otherwise less interesting to a large portion of our customers who are automotive enthusiasts, our revenue could be impacted.
Technology could render the need for some of our products obsolete.
We derive the majority of our revenue from surface and paint protection films, with the majority of products applied on painted surfaces of vehicles. If automotive paint technology were to improve substantially, such that newer paint did not chip, scratch or was generally not as susceptible to damage, our revenue could be impacted.

22



Similarly, our automotive and architectural window films could be impacted by changes or enhancements from automotive manufacturers or window manufacturers that would reduce the need for our products.
Failure, inadequacy, or breach of our information technology systems, infrastructure, and business information or violations of data protection laws could result in material harm to our business and reputation.
A great deal of confidential information owned by us is stored in our information systems, networks, and facilities or those of third parties. This includes valuable trade secrets and intellectual property, corporate strategic plans, marketing plans, customer information, and personally identifiable information, such as employee information (collectively, “confidential information”). We also rely to a large extent on the efficient and uninterrupted operation of complex information technology systems, infrastructure, and hardware (together “IT systems”), some of which are within our control and some of which are within the control of third parties, to accumulate, process, store, and transmit large amounts of confidential information and other data. We are subject to a variety of continuously evolving and developing laws and regulations around the world related to privacy, data protection, and data security. Maintaining the confidentiality, integrity and availability of our IT systems and confidential information is vital to our business.
IT systems are vulnerable to system inadequacies, operating failures, service interruptions or failures, security breaches, malicious intrusions, or cyber-attacks from a variety of sources. Cyber-attacks are growing in their frequency, sophistication, and intensity, and are becoming increasingly difficult to detect, mitigate, or prevent. Cyber-attacks come in many forms, including the deployment of harmful malware, exploitation of vulnerabilities, denial-of-service attacks, the use of social engineering, and other means to compromise the confidentiality, integrity and availability of our IT systems, confidential information, and other data. Breaches resulting in the compromise, disruption, degradation, manipulation, loss, theft, destruction, or unauthorized disclosure or use of confidential information, or the unauthorized access to, disruption of, or interference with our products and services, can occur in a variety of ways, including but not limited to, negligent or wrongful conduct by employees or others with permitted access to our systems and information, or wrongful conduct by hackers, competitors, certain governments, or other current or former company personnel.
The failure or inadequacy of our IT systems, the compromise, disruption, degradation, manipulation, loss, theft, destruction, or unauthorized disclosure or use of confidential information, or the unauthorized access to, disruption of, or interference with our products and services that rely on IT systems, could impair our ability to secure and maintain intellectual property rights; result in a product manufacturing interruption or failure, or in the interruption or failure of products or services that rely on IT systems; damage our operations, customer relationships, or reputation; and cause us to lose trade secrets or other competitive advantages. Unauthorized disclosure of personally identifiable information could expose us to significant sanctions for violations of data privacy laws and regulations around the world and could damage public trust in our company. For example, the European Union adopted the GDPR in 2018. The GDPR requires companies to meet new requirements regarding the handling of personal data, including its use, protection and transfer and the ability of persons whose data is stored to correct or delete such data about themselves. Failure to meet the GDPR requirements could result in penalties of up to 40% of annual worldwide revenue. The GDPR also confers a private right of action on certain individuals and associations.
To date, system inadequacies, operating failures, unauthorized access, service interruptions or failures, security breaches, malicious intrusions, cyber-attacks, and the compromise, disruption, degradation, manipulation, loss, theft, destruction, or unauthorized disclosure or use of confidential information have not had a material impact on our consolidated results of operations. We continue to implement measures in an effort to protect, detect, respond to, and minimize or prevent these risks and to enhance the resiliency of our IT systems; however, these measures may not be successful. If they are not successful, any of these events could result in material financial, legal, business, or reputational harm to our business.

23



Risks Relating to Common Stock
If research analysts issue unfavorable commentary or downgrade our Common Stock, the price of our Common Stock and their trading volume could decline.
The trading market for our Common Stock may depend in part on the research and reports that research analysts publish about us and our business. If we do not maintain adequate research coverage, or if one or more analysts who covers us downgrades our Common Stock or publishes inaccurate or unfavorable research about our business, the price of our Common Stock could decline. If one or more of the research analysts ceases to cover us or fails to publish reports on us regularly, demand for our Common Stock could decrease, which could cause the price or trading volume to decline.
We may issue additional equity securities, or engage in other transactions that could dilute our book value or affect the priority of our Common Stock, which may adversely affect the market price of our Common Stock.
Our articles of incorporation allow our Board to issue up to 100,000,000 shares of Common Stock. Our Board may determine from time to time that we need to raise additional capital by issuing Common Stock or other equity securities. Except as otherwise described in this Annual Report, we are not restricted from issuing additional securities, including securities that are convertible into or exchangeable for, or that represent the right to receive, shares of our Common Stock. Because our decision to issue securities in any future offering will depend on market conditions and other factors beyond our control, we cannot predict or estimate the amount, timing, or nature of any future offerings, or the prices at which such offerings may be affected. Additional equity offerings may dilute the holdings of our existing stockholders or reduce the market price of our Common Stock, or both. Holders of our Common Stock are not entitled to pre-emptive rights or other protections against dilution. New investors also may have rights, preferences and privileges that are senior to, and that adversely affect, the then-current holders of our Common Stock. Additionally, if we raise additional capital by making offerings of debt or shares of preferred stock, upon our liquidation, holders of our debt securities and shares of preferred stock, and lenders with respect to other borrowings, may receive distributions of our available assets before the holders of our Common Stock.
We may issue shares of preferred stock with greater rights than our Common Stock.
Subject to the rules of The NASDAQ Stock Market, our articles of incorporation authorize our board of directors to issue one or more series of preferred stock and set the terms of the preferred stock without seeking any further approval from holders of our Common Stock. Any preferred stock that is issued may rank ahead of our Common Stock in terms of dividends, priority and liquidation premiums and may have greater voting rights than our Common Stock.
We have not paid any cash dividends in the past and have no plans to issue cash dividends in the future, which could cause our Common Stock to have a lower value than that of similar companies which do pay cash dividends.
We have not paid any cash dividends on our Common Stock to date and do not anticipate any cash dividends being paid to holders of our Common Stock in the foreseeable future. Any determination to pay dividends in the future will be at the discretion of our Board.
While our dividend policy will be based on the operating results and capital needs of the business, it is anticipated that any earnings will be retained to finance our future expansion. As we have no plans to issue cash dividends in the future, our Common Stock could be less desirable to other investors and as a result, the value of our Common Stock may decline, or fail to reach the valuations of other similarly situated companies that pay cash dividends.

24



Shares eligible for future sale may depress our stock price.
As of March 16, 2020, we had 27,612,597 shares of Common Stock outstanding of which 11,088,229 shares were held by affiliates. All of the shares of Common Stock held by affiliates are restricted or are control securities under Rule 144 promulgated under the Securities Act of 1933 as amended (the “Securities Act”). Sales of shares of Common Stock under Rule 144 or another exemption under the Securities Act or pursuant to a registration statement could have a material adverse effect on the price of our Common Stock and could impair our ability to raise additional capital through the sale of equity securities. Furthermore, all Common Stock beneficially owned by persons who are not our affiliates and have beneficially owned such shares for at least one year may be sold at any time by these existing stockholders in accordance with Rule 144 of the Securities Act. However, there can be no assurance that any of these existing stockholders will sell any or all of their Common Stock and there may be a lack of supply of, or demand for, our Common Stock on The NASDAQ Stock Market. In the case of a lack of supply of our Common Stock offered in the market, the trading price of our Common Stock may rise to an unsustainable level, particularly in instances where institutional investors may be discouraged from purchasing our Common Stock because they are unable to purchase a block of our Common Stock in the open market due to a potential unwillingness of our existing stockholders to sell the amount of Common Stock at the price offered by such investors and the greater influence individual investors have in setting the trading price. In the case of a lack of market demand for our Common Stock, the trading price of our Common Stock could decline significantly and rapidly after our listing.
Percentage of ownership in our Common Stock may be diluted in the future.
In the future, the percentage ownership in our Common Stock owned by our stockholders may be diluted because of equity issuances for acquisitions, capital market transactions or otherwise, including equity awards that we expect to be granting to our directors, officers and employees. Such issuances may have a dilutive effect on our earnings per share, which could materially adversely affect the market price of our Common Stock.
Anti-takeover provisions could make a third party acquisition of us difficult.
Our bylaws eliminate the ability of stockholders to call special meetings or take action by written consent. These provisions in our bylaws could make it more difficult for a third party to acquire us without the approval of our board. In addition, the Nevada corporate statute also contains certain provisions that could make an acquisition by a third party more difficult.
Our directors and officers have substantial control over us.
Our directors and executive officers, together with their affiliates and related persons, beneficially owned, in the aggregate, approximately 40.2% of our outstanding Common Stock as of March 16, 2020. These stockholders have the ability to substantially control our operations and direct our policies including the outcome of matters submitted to our stockholders for approval, such as the election of directors and any acquisition or merger, consolidation or sale of all or substantially all of our assets.
Our bylaws provide that the state and federal courts located in Bexar County, Texas will be the exclusive forum for substantially all disputes between us and our stockholders, which could limit our stockholders’ ability to obtain a favorable judicial forum for disputes with us or our directors, officers or employees.
Our bylaws provide that, with certain limited exceptions, unless we consent in writing to the selection of an alternative forum, the state and federal courts located in Bexar County, Texas will be the sole and exclusive forum for any stockholder (including any beneficial owner) to bring any (i) derivative action or proceeding brought on our behalf, (ii) any action asserting a claim of, or a claim based on, breach of a fiduciary duty owed by any current or former director, officer, employee or stockholder to us or our stockholders, (iii) any

25



action asserting a claim against us or any current or former director, officer, employee or stockholder arising pursuant to any provision of Chapters 78 and 92 of the Nevada Revised Statutes or our articles of incorporation or bylaws or (iv) any action asserting a claim against us or any current or former director, officer, employee or stockholder (including any beneficial owner of stock) governed by the internal affairs doctrine. Any person or entity purchasing or otherwise acquiring any interest in our Common Stock is deemed to have notice of and consented to the foregoing provisions. This choice of forum provision may limit a stockholder’s ability to bring claim in a judicial forum that it finds favorable for disputes with us or our directors, officers or other employees, which may discourage such lawsuits against us and our directors, officers and employees. Alternatively, if a court were to find this choice of forum provision inapplicable to, or unenforceable in respect of, one or more of the specified types of actions or proceedings, we may incur additional costs associated with resolving such matters in other jurisdictions, which could adversely affect our business, financial condition or results of operations The choice of forum provision does not apply to any actions arising under the Securities Act or the Exchange Act.
Item 1B. Unresolved Staff Comments
None.
Item 2. Properties
Our principal office is located in leased premises in San Antonio, Texas. Our operations are conducted in facilities throughout North America and Europe. These facilities house production, distribution and operations, as well as installation services, sales and marketing. A description of our principal facilities as of December 31, 2019 is set forth in the chart below.
Location
Leased or Owned
 
Square Footage
 
Facility Activity
Headquarters:
 
 
 
 
 
San Antonio, Texas
Leased
 
16,651
 
Training/Admin functions
Other Properties:
 
 
 
 
 
Austin, Texas
Leased
 
8,522
 
Sales/Installation
Boise, Idaho
Leased
 
4,986
 
Sales/Installation
Calgary, Alberta, Canada
Leased
 
5,680
 
Warehouse/Sales/Training
Dallas, Texas
Leased
 
1,625
 
Sales/Installation
Dallas, Texas
Leased
 
1,125
 
Sales/Installation
Guadalajara, Jalisco, Mexico
Leased
 
6,830
 
Warehouse/Sales/Training
Houston, Texas
Leased
 
7,780
 
Sales/Installation
Las Vegas, Nevada
Leased
 
6,864
 
Sales/Installation
Letchworth, United Kingdom
Leased
 
3,632
 
Sales/Installation/Training
San Antonio, Texas
Leased
 
48,770
 
Warehouse/production
San Antonio, Texas
Leased
 
4,992
 
Sales/Installation
Terrebonne, Quebec, Canada
Leased
 
12,440
 
Warehouse/Sales/Training
Tilburg, The Netherlands
Leased
 
21,527
 
Warehouse/Sales/Training
Yilan City, Yilan County, Taiwan
Leased
 
4,300
 
Warehouse/Sales
Renningen, Baden-Württemberg, Germany
Leased
 
21,689
 
Sales/Installation
Fullerton, California
Leased
 
14,121
 
Warehouse/production
We believe that our facilities are suitable for their purpose and are sufficient to support our current business needs.

26



Item 3. Legal Proceedings
From time to time, we are made parties to actions filed or have been given notice of potential claims relating to the ordinary conduct of our business, including those pertaining to commercial disputes, product liability, patent infringement and employment matters.
While we believe that a material impact on our financial position, results of operations or cash flows from any such future claims or potential claims is unlikely, given the inherent uncertainty of litigation, it is possible that an unforeseen future adverse ruling or unfavorable development could result in future charges that could have a material adverse impact. We do and will continue to periodically reexamine our estimates of probable liabilities and any associated expenses and receivables and make appropriate adjustments to such estimates based on experience and developments in litigation. As a result, the current estimates of the potential impact on our financial position, results of operations and cash flows for the proceedings and claims described in the notes to our consolidated financial statements could change in the future.
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
The Company’s common stock is traded on The Nasdaq Stock Market LLC under the symbol XPEL.
Holders
As of March 16, 2020, there were 41 shareholders of record.
Dividend Policy
Holders of our Common Stock are entitled to receive such dividends as declared by our Board. No dividends have been paid with respect to our Common Stock and no dividends are anticipated to be paid in the foreseeable future. Any future decisions as to payment of dividends will be at the discretion of our Board, subject to applicable law.
Purchases of Equity Securities
In the year ended December 31, 2019 we did not repurchase any shares of our Common Stock.
Item 6. Selected Financial Data
Not applicable
Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations
Executive Summary
Set forth below is summary financial information for the years ended December 31, 2019 and 2018. This information is not necessarily indicative of results of future operations, and should be read in conjunction with Part I, Item 1A, “Risk Factors,” Part II, Item 7, “Management’s Discussion and Analysis of Financial Condition and Results of Operations” and the consolidated financial statements and accompanying notes

27



thereto included in Part II, Item 8 of this Annual Report to fully understand factors that may affect the comparability of the information presented below.
 
Year Ended December 31, 2019
 
%
of Total Revenue
 
Year Ended December 31, 2018
 
%
of Total Revenue
 
$
Change
 
%
Change
Total revenue
$
129,932,881

 
100.0
%
 
$
109,920,614

 
100.0
%
 
$
20,012,267

 
18.2
 %
Total cost of sales
86,426,622

 
66.5
%
 
76,484,009

 
69.6
%
 
9,942,613

 
13.0
 %
Gross margin
43,506,259

 
33.5
%
 
33,436,605

 
30.4
%
 
10,069,654

 
30.1
 %
Total operating expenses
26,418,912

 
20.3
%
 
21,630,602

 
19.7
%
 
4,788,310

 
22.1
 %
Operating income
17,087,347

 
13.2
%
 
11,806,003

 
10.7
%
 
5,281,344

 
44.7
 %
Other expenses
136,919

 
0.1
%
 
324,698

 
0.3
%
 
(187,779
)
 
(57.8
)%
Income tax
2,955,356

 
2.3
%
 
2,760,073

 
2.5
%
 
195,283

 
7.1
 %
Net income
$
13,995,072

 
10.8
%
 
$
8,721,232

 
7.9
%
 
$
5,273,840

 
60.5
 %
Full-Year 2019 compared to Full-Year 2018
Consolidated revenue grew 18.2% to $129.9 million.
Gross margin grew 30.1% to $43.5 million. Gross margin percentage improved 3.1% to 33.5% of revenue.
Total operating expenses grew 22.1% to $26.4 million and represented 20.3% of total consolidated revenue.
Income tax expense grew 7.1% to $3.0 million. The effective income tax rate was 17.4%.
Net income grew 60.5% to $14.0 million and represented 10.8% of total revenue. Earnings per share was $0.51 compared with $0.32 in 2018.
Key Business Metric - Non-GAAP Financial Measures
Our management regularly monitors certain financial measures to track the progress of our business against internal goals and targets. We believe that the most important measure to the Company is Earnings Before Interest, Taxes, Depreciation, and Amortization (“EBITDA”).
EBITDA is a non-GAAP financial measure. We believe EBITDA provides helpful information with respect to our operating performance as viewed by management, including a view of our business that is not dependent on (i) the impact of our capitalization structure and (ii) items that are not part of our day-to-day operations. Management uses EBITDA (1) to compare our operating performance on a consistent basis, (2) to calculate incentive compensation for our employees, (3) for planning purposes including the preparation of our internal annual operating budget, (4) to evaluate the performance and effectiveness of our operational strategies, and (5) to assess compliance with various metrics associated with the agreements governing our indebtedness. Accordingly, we believe that EBITDA provides useful information in understanding and evaluating our operating performance in the same manner as management. We define EBITDA as net income plus (a) total depreciation and amortization, (b) interest expense, net, and (c) income tax expense.

28



The following table is a reconciliation of Net income to EBITDA for the years ended December 31,
 
2019
 
%
of Total Revenue
 
2018
 
%
of Total Revenue
Net Income
$
13,995,072

 
10.8
%
 
$
8,721,232

 
7.9
%
Interest
96,646

 
0.1
%
 
168,389

 
0.2
%
Taxes
2,955,356

 
2.3
%
 
2,760,073

 
2.5
%
Depreciation
915,918

 
0.7
%
 
735,983

 
0.7
%
Amortization
781,105

 
0.5
%
 
642,801

 
0.6
%
EBITDA
$
18,744,097

 
14.4
%
 
$
13,028,478

 
11.9
%
Use of Non-GAAP Financial Measures
EBITDA should be considered in addition to, not as a substitute for, or superior to, financial measures calculated in accordance with GAAP. It is not a measurement of our financial performance under GAAP and should not be considered as alternatives to revenue or net income, as applicable, or any other performance measures derived in accordance with GAAP and may not be comparable to other similarly titled measures of other businesses. EBITDA has limitations as an analytical tool and you should not consider it in isolation or as a substitute for analysis of our operating results as reported under GAAP.
EBITDA does not reflect the impact of certain cash charges resulting from matters we consider not to be indicative of ongoing operations; and other companies in our industry may calculate EBITDA differently than we do, limiting their usefulness as comparative measures.

Results of Operations
The following tables summarize revenue results for the years ended December 31, 2019 and 2018:
 
Year Ended December 31,
 
%
 
% of Total Revenue
 
2019
 
2018
 
Increase (Decrease)
 
2019
 
2018
Product Revenue
 
 
 
 
 
 
 
 
 
Paint protection film
$
97,341,865

 
$
85,495,382

 
13.9
%
 
74.9
%
 
77.8
%
Window film
11,384,437

 
7,309,773

 
55.7
%
 
8.8
%
 
6.7
%
Other
3,478,437

 
2,721,195

 
27.8
%
 
2.7
%
 
2.4
%
Total
$
112,204,739

 
$
95,526,350

 
17.5
%
 
86.4
%
 
86.9
%
 
 
 
 
 
 
 
 
 
 
Service Revenue
 
 
 
 
 
 
 
 
 
Software
$
3,263,391

 
$
2,566,960

 
27.1
%
 
2.5
%
 
2.3
%
Cutbank credits
7,253,610

 
6,197,250

 
17.0
%
 
5.6
%
 
5.6
%
Installation labor
6,620,527

 
5,211,633

 
27.0
%
 
5.1
%
 
4.7
%
Training
590,614

 
418,421

 
41.2
%
 
0.4
%
 
0.5
%
Total
$
17,728,142

 
$
14,394,264

 
23.2
%
 
13.6
%
 
13.1
%
 
 
 
 
 
 
 
 
 
 
Total
$
129,932,881

 
$
109,920,614

 
18.2
%
 
100.0
%
 
100.0
%

29



Because many of our international customers require us to ship their orders to freight forwarders located in the United States, we cannot be certain about the ultimate destination of the product. The following table represents our estimate of sales by geographic regions based on our understanding of ultimate product destination based on customer interactions, customer locations and other factors for years ended December 31, 2019 and 2018:
 
Year Ended December 31,
 
%
 
% of Total Revenue
 
2019
 
2018
 
Increase (Decrease)
 
2019
 
2018
United States
$
60,452,238

 
$
46,077,624

 
31.2
 %
 
46.5
%
 
41.9
%
China
30,490,859

 
32,279,335

 
(5.5
)%
 
23.5
%
 
29.4
%
Canada
17,912,548

 
15,146,869

 
18.3
 %
 
13.8
%
 
13.8
%
Continental Europe
7,419,524

 
5,734,925

 
29.4
 %
 
5.7
%
 
5.2
%
United Kingdom
3,784,535

 
2,725,925

 
38.8
 %
 
2.9
%
 
2.5
%
Asia Pacific
4,370,156

 
2,754,495

 
58.7
 %
 
3.4
%
 
2.5
%
Latin America
2,098,873

 
1,799,180

 
16.7
 %
 
1.6
%
 
1.6
%
Middle East/Africa
3,149,235

 
2,806,502

 
12.2
 %
 
2.4
%
 
2.6
%
Other
254,913

 
595,759

 
(57.2
)%
 
0.2
%
 
0.5
%
Total
$
129,932,881

 
$
109,920,614

 
18.2
 %
 
100.0
%
 
100.0
%
Product Revenue. Product revenue increased 17.5% for the year ended December 31, 2019 . Product revenue represented 86.4% of our total revenue for the year ended December 31, 2019. Within this category, revenue from our paint protection film product line increased 13.9% for the year ended December 31, 2019. Paint protection film sales represented 74.9% and 77.8% of our consolidated revenue for the years ended December 31, 2019 and 2018, respectively. Overall, this growth was due mainly to increases in the square footage of film product sold owing to increased demand for our products. This increase in demand was driven by both an increase in the number of customers and an increase in revenue to existing customers. Revenue from our window film product line grew 55.7% in the year ended December 31, 2019. Window film sales represented 8.8% and 6.7% of our consolidated revenue for the years ended December 31, 2019 and 2018, respectively. This growth was attributable to increased demand for our window film products commensurate with increased window film adoption within our distribution channels and an increase in new customers.
Geographically, growth was strong in most of the regions in which we operate except for China. The decline in China in 2019 was primarily due to the need to sell through inventory built up in the region during 2018. This sell through of the 2018 inventory build occurred primarily during the first half of 2019 after which growth in sales to China resumed.
Service revenue. Service revenue consists of revenue from fees for DAP software access, cutbank credit revenue which represents per-cut fees charged for the use of our DAP software, revenue from the labor portion of installation sales in our company-owned installation centers and revenue from training services provided to our customers. Service revenue grew 23.2% over the service revenue for the year ended December 31, 2018. Service revenue represented 13.6% and 13.1% of our total consolidated revenue from the years ended December 31, 2019 and 2018, respectively.
Within the service revenue category, software revenue increased 27.1% from the year ended December 31, 2018. Software revenue represented 2.5% and 2.3% of our total consolidated revenue for the years ended December 31, 2019 and 2018, respectively. This increase was due primarily to increases in customers subscribing to our software. Cutbank credit revenue grew 17.0% from the year ended December 31, 2018. Cutbank sales represented 5.6% and 5.6% of our total consolidated revenue for the years ended December 31, 2019 and 2018, respectively. This increase was due primarily to the aforementioned increases in demand for our products and services. Installation labor revenue increased 27.0% from the year ended December 31, 2018, due mainly to the increase in demand for installation services. Training revenue increased 41.2% from the year ended December 31, 2018. This growth was due to continued strong interest in the Company’s training program coupled with increased training capacity added in 2019.
Total installation revenue (labor and product combined) at our Company-owned installation centers for the year ended December 31, 2019 increased 27.0% over the year ended December 31, 2018. This represented

30



6.1% and 5.6% of our total consolidated revenue for the years ended December 31, 2019 and 2018, respectively. Adjusted product revenue, which combines the cutbank credit revenue service component with product revenue, increased by 17.4% from the year ended December 31, 2018 due mainly to the same factors described previously.
Cost of Sales
Cost of sales consists of product costs and the costs to provide our services. Product costs consist of material costs, personnel costs related to warehouse personnel, shipping costs, warranty costs and other related costs to provide products to our customers. Cost of service includes the labor costs associated with installation of product in our Company-owned facilities, costs of labor associated with pattern design for our cutting software and the costs incurred to provide training for our customers. Product costs in the year ended December 31, 2019 increased 11.7% over the year ended December 31, 2018 commensurate with the growth in product revenue. Cost of product sales represented 63.3% and 67.0% of total revenue in the years ended December 31, 2019 and 2018, respectively. Cost of service revenue grew 45.6% during the year ended December 31, 2019. The increase was due primarily to increases in labor installation costs commensurate with increased installation revenue and increases in design costs related to continued investments in DAP.
Gross Margin
Gross margin for the year ended December 31, 2019 grew approximately $10.1 million, or 30.1%. For the years ended December 31, 2019 and 2018, gross margin represented 33.5% and 30.4% of revenue, respectively. The following table summarizes gross margin for product and services for the years ended December 31, 2019 and 2018:
 
Year Ended December 31,
 
%
 
% of Category Revenue
 
2019
 
2018
 
Increase (Decrease)
 
2019
 
2018
Product
$
29,896,483

 
$
21,869,961

 
36.7
%
 
26.6
%
 
22.9
%
Service
13,609,776

 
11,566,644

 
17.7
%
 
76.8
%
 
80.4
%
Total
$
43,506,259

 
$
33,436,605

 
30.1
%
 
33.5
%
 
30.4
%
Product gross margin for the year ended December 31, 2019 increased approximately $8.0 million, or 36.7%, over the year ended December 31, 2018 and represented 26.6% and 22.9% of total product revenue for the years ended December 31, 2019 and 2018, respectively. The increases in product gross margin percentages were primarily due to a lower percentage of sales to lower margin distributors (primarily our China Distributor) and improvements in product costs and operating leverage.
Service gross margin increased approximately $2.0 million for the year ended December 31, 2019, and represented 76.8% and 80.4% of total service revenue for the years ended December 31, 2019 and 2018, respectively. The decrease in service gross margin percentage for these periods versus the prior year periods was primarily due to a higher percentage of lower margin installation labor costs relative to other higher margin service revenue components and increases in design costs related to continued investments in DAP.
Operating Expenses
Sales and marketing expenses for the year ended December 31, 2019 increased 11.5% compared to 2018. These expenses represented 5.8% and 6.2% of consolidated revenue for the years ended December 31, 2019 and 2018, respectively. This increase was primarily attributable to increases in sales staff and other marketing related expenses incurred to support the ongoing growth of the business.
General and administrative expenses grew approximately $4.0 million, or 27.0%, during the year ended December 31, 2019. These costs represented 14.5% and 13.5% of total consolidated revenue for the years ended December 31, 2019 and 2018, respectively. The increase was due mainly to increases in personnel, occupancy costs, information technology costs and research and development costs to support the ongoing growth of the business and increases in professional fees due primarily to the ancillary costs associated with the preparation and filing of the Company’s registration statement on Form 10.

31



Income Tax Expense
Income tax expense for the year ended December 31, 2019 grew 7.1% to $3.0 million. On December 22, 2017, the U.S. government enacted comprehensive tax legislation commonly referred to as the Tax cuts and Jobs Act of Tax Reform Act. The Tax Reform Act made broad and complex changes to the U.S. tax code that affected the Company including, but not limited to, a permanent reduction of the U.S. corporate income tax rate from 34% to 21% effective January 1, 2018. The Company’s effective tax rate for the years ended December 31, 2019 and 2018 was 17.4% and 24.0%. The decrease in the effective rate was due primarily to 2018 return to provision adjustments and the impact of certain provisions of the Tax Reform Act.
Net Income
Net income for the year ended December 31, 2019 increased by $5.3 million from the prior year to $14.0 million due primarily to increased revenue and improved margins.
Liquidity and Capital Resources
The primary sources of liquidity for our business are cash and cash equivalents and cash flows provided by operations. As of December 31, 2019, we had cash and cash equivalents of $11.5 million We expect to continue to have cash requirements to support working capital needs, capital expenditures, and to pay interest and service debt, if applicable. We believe we have the ability and sufficient capacity to meet these cash requirements by using available cash and internally generated funds and borrowing under committed credit facilities. We are focused on continuing to generate positive operating cash to fund our operational and capital investment initiatives. We believe we have sufficient liquidity to operate for at least the next 12 months from the date of filing this report.
Operating activities. Cash flows provided by operations totaled approximately $11.0 million for the year ended December 31, 2019, compared to $6.8 million for the year ended December 31, 2018. This increase was driven primarily by increased net income partially offset by increases in net working capital investments.
Investing activities. Cash flows used in investing activities totaled approximately $2.3 million during the year ended December 31, 2019 compared $3.1 million during the year ended December 31, 2018. This decrease was due primarily to fewer acquisitions during the year ended December 31, 2019.
Financing activities. Cash flows used in financing activities during the year ended December 31, 2019 totaled approximately $1.1 million compared to $3.1 million for the same period in 2018. The decrease in cash flows used in financing activities were due primarily to lower debt levels.
Debt obligations as of December 31, 2019 and December 31, 2018 totaled approximately $0.8 million and $1.8 million, respectively.
Credit Facilities
Our credit facilities consist of an $8.5 million revolving line of credit agreement with The Bank of San Antonio and a revolving credit facility maintained by our Canadian subsidiary. The Bank of San Antonio facility is utilized to fund our working capital needs and is secured by a security interest in substantially all of our current and future assets. The line has a variable interest rate of the Wall Street Journal prime rate plus 0.75% with a floor of 4.25% and matures in May 2020. The interest rate as of December 31, 2019 and December 31, 2018 was 5.50% and 6.00%, respectively. As of December 31, 2019 and December 31, 2018, no balance was outstanding on this line.
The credit agreement contains customary covenants including covenants relating to complying with applicable laws, delivery of financial statements, payment of taxes and maintaining insurance. The credit agreement also requires that  XPEL must maintain debt service coverage (EBITDA divided by the current portion of long-term debt plus interest) of 1.25:1 and debt to tangible net worth of 4.0:1 on a rolling four quarter basis. The credit agreement also contains customary events of default including the failure to make payments of principal and interests, the breach of any covenants, the occurrence of a material adverse change, and certain bankruptcy and insolvency events. As of December 31, 2019, the Company was in compliance with all covenants.

32



During 2018, XPEL Canada Corp., a wholly-owned subsidiary of XPEL, Inc., entered into a Canadian Dollar (“CAD”) $4.5 million revolving credit facility through HSBC Bank Canada. This facility is utilized to fund our working capital needs in Canada. This facility bears interest at HSBC Canada Bank’s prime rate plus .25% per annum and is guaranteed by the parent company. As of December 31, 2019 and December 31, 2018, no balance was outstanding on this facility.
Contractual Obligations
The Company has contractual obligations to purchase stated quantities of inventory from its primary supplier through March 2020. The agreement in place requires that the Company use commercially reasonable efforts to purchase $5,000,000 worth of products from this supplier on a quarterly basis and includes an annual purchase requirement of $20,000,000. This Supply Agreement will renew on March 21, 2020 for an additional two-year term.
The Company also has annual contractual obligations for operating leases according to the details discussed more fully in Footnote 15, Leases, to the Company’s audited consolidated financial statements included in Item 8.
Critical Accounting Policies
We have adopted various accounting policies to prepare the consolidated financial statements in accordance with U.S. GAAP. Certain of our accounting policies require the application of significant judgment by management in selecting the appropriate assumptions for calculating financial estimates. We identified the critical accounting policies which affect our more significant estimates and assumptions used in preparing our consolidated financial statements.
Certain of the most critical estimates that require significant judgment are as follows:
Allowance for Doubtful Accounts
When evaluating the adequacy of the allowance for doubtful accounts, we analyze accounts receivable, historical write-offs of bad debts, customer concentrations, customer credit-worthiness, current economic trends and changes in customer payment terms. We maintain an allowance for doubtful accounts at an amount estimated to be sufficient to provide adequate protection against losses resulting from collecting less than full payment on outstanding accounts receivable. An amount of judgment is required when assessing the ability to realize accounts receivable, including assessing the probability of collection and the current credit-worthiness of each customer. If the financial condition of our customers was to deteriorate, resulting in an impairment of their ability to make payments, an additional provision for uncollectible accounts may be required. This allowance was $0.2 million and $0.1 million as of December 31, 2019 and 2018, respectively. Based on our analysis, we believe the reserve is adequate for any exposure to credit losses.
Inventory Reserves
Inventory reserves are maintained for the estimated value of the inventory that may have a lower value than stated or quantities in excess of future production needs. We have an evaluation process to assess the value of the inventory that is slow moving, excess or obsolete on a quarterly basis. We evaluate our inventory based on current usage and the latest forecasts of product demand and production requirements from our customers. This reserve was $0.1 million and $0.2 million as of December 31, 2019 and 2018, respectively. Based on our evaluation, we believe the reserve to be adequate.
Recoverability of Long-Lived Assets
The Company reviews its long-lived assets whenever events or changes in circumstances indicate the carrying amount of the assets may not be recoverable and determines potential impairment by comparing

33



the carrying value of the assets with expected net cash flows expected to be provided by operating activities of the business or related products. If the sum of the expected undiscounted future net cash flows were less than the carrying value, we would determine whether an impairment loss should be recognized. An impairment loss would be measured by comparing the amount by which the carrying value exceeds the fair value of the asset. No impairment losses were recorded in any year presented.
Goodwill and Intangible Assets  
Goodwill represents the excess purchase price over the fair value of tangible net assets acquired in business combinations after amounts have been allocated to intangible assets. Goodwill is not amortized, but is reviewed for impairment during the last quarter of each year, or whenever events occur or circumstances change that would more likely than not reduce the fair value of a reporting unit below its carrying amount, using a discounted cash flow model and comparable market values of each reporting unit. Measuring the fair value of reporting units is a Level 3 measurement under the fair value hierarchy. See Note 12, Fair Value Measurements, for a discussion of levels.
Intangible assets primarily consist of capitalized software, customer relationships, trademarks and non-compete agreements. These assets are amortized on a straight-line basis over the period of time in which their expected benefits will be realized.
Revenue Recognition
Our revenue is comprised primarily of product and services sales where we act as principal to the transaction.  All revenue is recognized when the Company satisfies its performance obligation(s) by transferring the promised product or service to our customer when our customer obtains control of the product or service, with the majority of our revenue being recognized at a point in time. A performance obligation is a promise in a contract to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. Revenue is recorded net of returns, allowances. Sales, value add, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are accounted for as a fulfillment obligation, on a net basis, and are included in cost of sales.
Business Combinations
Identifiable assets acquired and liabilities and contingent liabilities assumed in a business combination are measured initially at their fair values at the acquisition date, irrespective of the extent of any non-controlling interest. The excess of the fair value of the consideration transferred including the recognized amount of any non-controlling interest in the acquiree, over the fair value of the Company’s share of the identifiable net assets acquired is recorded as goodwill. Acquisition-related expenses are recognized separately from the business combination and are recognized as general and administrative expense as incurred.
There have been no other material changes to our critical accounting policies and estimates from those previously disclosed in our consolidated financial statements.
Recent Accounting Pronouncements Not Yet Adopted
In June 2016, the FASB issued ASU 2016-13, “Financial Instruments — Measurement of Credit Losses on Financial Instruments”, which requires measurement and recognition of expected credit losses for financial assets held. As a smaller reporting company, ASU 2016-13 is effective for the Company beginning January 1, 2023 and is required to be applied prospectively. We are currently evaluating the impact that ASU 2016-13 will have on our consolidated financial statements.

34



Related Party Relationships
There are no family relationships between or among any of our directors or executive officers. There are no arrangements or understandings between any two or more of our directors or executive officers, and there is no arrangement, plan or understanding as to whether non-management stockholders will exercise their voting rights to continue to elect the current Board. There are also no arrangements, agreements or understandings between non-management stockholders that may directly or indirectly participate in or influence the management of our affairs.
Off-Balance Sheet Arrangements
As of December 31, 2019 and December 31, 2018, we did not have any relationships with unconsolidated organizations or special purpose entities, that were established for the purpose of facilitating off-balance sheet arrangements. We do not engage in off-balance sheet financing arrangements. In addition, we do not engage in trading activities involving non-exchange contracts.
Item 7A. Quantitative and Qualitative Disclosures about Market Risk
We have operations that expose us to currency risk in the British Pound Sterling, the Canadian Dollar, the Euro, the Mexican Peso, and the New Taiwanese Dollar. Amounts invested in our foreign operations are translated into U.S. Dollars at the exchange rates in effect at the balance sheet date. The resulting translation adjustments are recorded as accumulated other comprehensive income, a component of stockholders’ equity in our consolidated balance sheets. We do not currently hedge our exposure to potential foreign currency translation adjustments.
If we borrow under our revolving lines of credit, we will be subject to market risk resulting from changes in interest rates related to our floating rate bank credit facilities. If we were to make such borrowings, a hypothetical 100 basis point increase in variable interest rates may result in a material impact to our financial statements. We do not currently have any derivative contracts to hedge our exposure to interest rate risk. During each of the periods presented, we have not experienced a significant effect on our business due to changes in interest rates.

Item 8. Financial Statements and Supplementary Data
REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM
To the stockholders and the board of directors of XPEL, Inc.:
Opinion on the Financial Statements
We have audited the accompanying consolidated balance sheets of XPEL, Inc. (the "Company") as of December 31, 2019 and 2018, the related consolidated statements of income, comprehensive income, changes in stockholders' equity, and cash flows, for the years then ended, and the related notes (collectively referred to as the "consolidated financial statements"). In our opinion, the consolidated financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2019 and 2018, and the results of their operations and their cash flows for the years then ended, in conformity with accounting principles generally accepted in the United States of America.

35



Emphasis of Matter - Change in Accounting Principle
As discussed in Note 15 to the consolidated financial statements, the Company has changed its method of accounting for operating leases as of January 1, 2019 due to the adoption of ASU 2016-02, Leases (Topic 842).
Basis for Opinion
These consolidated financial statements are the responsibility of the Company's management. Our responsibility is to express an opinion on the Company's consolidated 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 consolidated financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits, we are required to obtain an understanding of internal control over financial reporting but not for the purpose of expressing an opinion on the effectiveness of the Company'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 consolidated 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 consolidated 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 consolidated financial statements. We believe that our audits provide a reasonable basis for our opinion.
/s/ Baker Tilly Virchow Krause, LLP
We have served as the Company's auditor since 2017.
Minneapolis, Minnesota
March 16, 2020


36

XPEL, INC.
Consolidated Balance Sheets


 
December 31, 2019
 
December 31, 2018
Assets
 
 
 
Current
 
 
 
Cash and cash equivalents
$
11,500,973

 
$
3,971,226

Accounts receivable, net
7,154,084

 
5,554,313

Inventory, net
15,141,153

 
10,799,611

Prepaid expenses and other current assets
2,391,340

 
706,718

Income tax receivable
93,150

 

Total current assets
36,280,700

 
21,031,868

Property and equipment, net
4,014,653

 
3,384,206

Right-of-Use lease assets
5,079,110

 

Intangible assets, net
3,820,460

 
3,804,026

Goodwill
2,406,512

 
2,322,788

Total assets
$
51,601,435

 
$
30,542,888

Liabilities
 
 
 
Current
 
 
 
Current portion of notes payable
$
462,226

 
$
853,150

Current portion lease liabilities
1,126,701

 

Accounts payable and accrued liabilities
10,197,353

 
6,292,093

Income tax payable

 
1,337,599

Total current liabilities
11,786,280

 
8,482,842

Deferred tax liability, net
604,715

 
478,864

Non-current portion of lease liabilities
4,009,949

 

Non-current portion of notes payable
307,281

 
968,237

Total liabilities
16,708,225

 
9,929,943

Stockholders’ equity
 
 
 
Preferred stock, $0.001 par value; authorized 10,000,000; none issued and outstanding

 

Common stock, $0.001 par value; 100,000,000 shares authorized; 27,612,597 issued and outstanding
27,613

 
27,613

Additional paid-in-capital
11,348,163

 
11,348,163

Accumulated other comprehensive loss
(908,764
)
 
(1,190,055
)
Retained earnings
24,594,878

 
10,617,253

 
35,061,890

 
20,802,974

Non-controlling interest
(168,680
)
 
(190,029
)
Total stockholders’ equity
34,893,210

 
20,612,945

Total liabilities and stockholders’ equity
$
51,601,435

 
$
30,542,888

See notes to consolidated financial statements.

37

XPEL, INC.
Consolidated Statements of Income

 
 
Year Ended December 31,
 
 
2019
 
2018
Revenue
 
 
 
 
Product revenue
 
$
112,204,739

 
$
95,526,350

Service revenue
 
17,728,142

 
14,394,264

Total revenue
 
129,932,881

 
109,920,614

 
 
 
 
 
Cost of Sales
 
 
 
 
Cost of product sales
 
82,308,256

 
73,656,389

Cost of service
 
4,118,366

 
2,827,620

Total cost of sales
 
86,426,622

 
76,484,009

Gross Margin
 
43,506,259

 
33,436,605

 
 
 
 
 
Operating Expenses
 
 
 
 
Sales and marketing
 
7,584,377

 
6,802,241

General and administrative
 
18,834,535

 
14,828,361

Total operating expenses
 
26,418,912

 
21,630,602

 
 
 
 
 
Operating Income
 
17,087,347

 
11,806,003

 
 
 
 
 
Interest expense
 
96,646

 
168,389

Foreign currency exchange loss
 
40,273

 
156,309

 
 
 
 
 
Income before income taxes
 
16,950,428

 
11,481,305

Income tax expense
 
2,955,356

 
2,760,073

Net income
 
13,995,072

 
8,721,232

Income attributed to non-controlling interest
 
17,447

 
8,698

Net income attributable to stockholders of the Company
 
$
13,977,625

 
$
8,712,534

 
 
 
 
 
Earnings per share attributable stockholders of the Company
 
 
 
 
Basic and diluted
 
$
0.51

 
$
0.32

Weighted Average Number of Common Shares
 
 
 
 
Basic and diluted
 
27,612,597

 
27,612,597

See notes to consolidated financial statements.

38

XPEL, INC.
Consolidated Statements of Comprehensive Income

 
 
Year Ended December 31,
 
 
2019
 
2018
Other comprehensive income
 
 
 
 
Net income
 
$
13,995,072

 
$
8,721,232

Foreign currency translation
 
285,193

 
(603,673
)
Total comprehensive income
 
14,280,265

 
8,117,559

Total comprehensive income attributable to:
 
 
 
 
Stockholders of the Company
 
14,258,916

 
8,119,162

Non-controlling interest
 
21,349

 
(1,603
)
Total comprehensive income
 
$
14,280,265

 
$
8,117,559

See notes to consolidated financial statements.


39

XPEL, INC.
Consolidated Statements of Changes in Stockholders’ Equity


 
Common Stock
 
Additional Paid-in-Capital
 
Retained
Earnings
 
Accumulated
Other
Comprehensive
Loss
 
Equity
attributable to
Stockholders of
the Company
 
Non-Controlling
Interest
 
Total Stockholders’ Equity
 
Shares
 
Amount
 
 
 
 
 
 
Balance as of December 31, 2017
27,612,597

 
$
27,613

 
$
11,348,163

 
$
1,904,719

 
$
(596,683
)
 
$
12,683,812

 
$
(188,426
)
 
$
12,495,386

Net income

 

 

 
8,712,534

 

 
8,712,534

 
8,698

 
8,721,232

Foreign currency translation

 

 

 

 
(593,372
)
 
(593,372
)
 
(10,301
)
 
(603,673
)
Balance as of December 31, 2018
27,612,597

 
27,613

 
11,348,163

 
10,617,253

 
(1,190,055
)
 
20,802,974

 
(190,029
)
 
20,612,945

Net income

 

 

 
13,977,625

 

 
13,977,625

 
17,447

 
13,995,072

Foreign currency translation

 

 

 

 
281,291

 
281,291

 
3,902

 
285,193

Balance as of December 31, 2019
27,612,597

 
$
27,613

 
$
11,348,163

 
$
24,594,878

 
$
(908,764
)
 
$
35,061,890

 
$
(168,680
)
 
$
34,893,210

See notes to consolidated financial statements.

                                        40

XPEL, INC.
Consolidated Statements of Cash Flows


 
Year Ended December 31,
 
2019
 
2018
Cash flows from operating activities
 
 
 
Net income
$
13,995,072

 
$
8,721,232

Adjustments to reconcile net income to net cash provided by operating activities:
 
 
 
Depreciation of property, plant and equipment
915,918

 
735,983

Amortization of intangible assets
781,105

 
642,801

Impairment expense
66,364

 

(Gain) loss on sale of property and equipment
(11,298
)
 
25,733

Bad debt expense
242,091

 
190,230

Deferred income tax
117,328

 
(86,218
)
Accretion on notes payable
61,316

 
43,416

 
 
 
 
Changes in current assets and liabilities:
 
 
 
Accounts receivable
(1,773,371
)
 
(261,256
)
Inventory, net
(4,251,134
)
 
11,148

Prepaid expenses and other current assets
(1,653,420
)
 
132,682

Income tax receivable
(93,611
)
 

Change in operating lease liabilities
32,576

 

Accounts payable and accrued liabilities
3,877,024

 
(3,635,246
)
Income tax payable
(1,340,441
)
 
276,280

Net cash provided by operating activities
10,965,519

 
6,796,785

Cash flows used in investing activities
 
 
 
Purchase of property, plant and equipment
(1,569,823
)
 
(2,030,314
)
Proceeds from sale of property and equipment
68,457

 
155,277

Acquisitions, net of cash acquired and notes payable
(127,623
)
 
(831,934
)
Development or purchase of intangible assets
(674,581
)
 
(386,985
)
Net cash used in investing activities
(2,303,570
)
 
(3,093,956
)
Cash flows from financing activities
 
 
 
Net repayments on revolving credit agreement

 
(2,000,000
)
Repayment of bank loan payable

 
(440,126
)
Repayments of notes payable
(1,143,240
)
 
(658,055
)
Net cash used in financing activities
(1,143,240
)
 
(3,098,181
)
Net change in cash and cash equivalents
7,518,709

 
604,648

Foreign exchange impact on cash and cash equivalents
11,038

 
(132,326
)
Increase in cash and cash equivalents during the period
7,529,747

 
472,322

Cash and cash equivalents at beginning of year
3,971,226

 
3,498,904

Cash and cash equivalents at end of year
$
11,500,973

 
$
3,971,226

 
 
 
 
Supplemental schedule of non-cash activities
 
 
 
Notes payable issued for acquisitions
$

 
$
998,668

Forgiveness of debt for acquired entities
$

 
$
88,216

 
 
 
 
Supplemental cash flow information
 
 
 
Cash paid for income taxes
$
4,079,962

 
$
2,514,727

Cash paid for interest
$
17,850

 
$
86,417

See notes to consolidated financial statements.

41

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

1.    SIGNIFICANT ACCOUNTING POLICIES
Nature of Business - The Company is based in San Antonio, Texas and sells, distributes, and installs protective films and coatings, including automotive surface and paint protection film, headlight protection, automotive and architectural window films and ceramic coatings.
The Company was incorporated in the state of Nevada, U.S.A. in October 2003 and its registered office is 618 W. Sunset Road, San Antonio, Texas, 78216.
Basis of Presentation - The consolidated financial statements are prepared in conformity with GAAP and include the accounts of the Company and its wholly-owned or majority-owned subsidiaries. The ownership interest of non-controlling participants in subsidiaries that are not wholly-owned is included as a separate component of stockholders’ equity. The non-controlling participants’ share of the net income is included as “Income attributable to noncontrolling interest” on the Consolidated Statements of Income and Comprehensive Income. Intercompany accounts and transactions have been eliminated.
The functional currency for the Company is the United States dollar. The assets and liabilities of each of its foreign subsidiaries are translated into U.S dollars using the exchange rate at the end of the balance sheet date. Revenues and expenses are translated at the average exchange rates for the period. Gains and losses from translations are recognized in foreign currency translation included in accumulated other comprehensive income in the accompanying consolidated balance sheets. Foreign currency exchange gains and losses are recorded in other expense, net in the accompanying consolidated statements of income. The ownership percentages and functional currencies of the entities included in these consolidated financial statements are as follows:
Subsidiaries
 
Functional Currency
 
% Owned by XPEL, Inc.
XPEL, Ltd.
 
UK Pound Sterling
 
85
%
Armourfend CAD, LLC
 
US Dollar
 
100
%
XPEL Canada Corp.
 
Canadian Dollar
 
100
%
XPEL B.V.
 
Euro
 
100
%
XPEL Germany GmbH
 
Euro
 
100
%
XPEL de Mexico S. de R.L. de C.V.
 
Peso
 
100
%
XPEL Acquisition Corp.
 
Canadian Dollar
 
100
%
Protex Canada, Inc.
 
Canadian Dollar
 
100
%
Apogee Corp.
 
New Taiwan Dollar
 
100
%

Segment Reporting - Management has concluded that our chief operating decision maker (“CODM”) is our chief executive officer. The Company’s CODM reviews the entire organization’s consolidated results as a whole on a monthly basis to evaluate performance and make resource allocation decisions. Management views the Company’s operations and manages its business as one operating segment.
Use of Estimates - The preparation of these consolidated financial statements in conformity to U.S. GAAP requires management to make judgments and estimates and form assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated financial statements and reported amounts of revenues and expenses during the reporting period. Estimates and underlying assumptions are reviewed on an ongoing basis. Actual outcomes may differ from these estimates under different assumptions and conditions.
Foreign Currency Translation - The financial statements of subsidiaries located outside of the U.S. are generally measured using the local currency as the functional currency. Assets and liabilities of these subsidiaries are translated at the rates of exchange at the balance sheet date. Income and expense items

42

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

are translated at average monthly rates of exchange. The resultant translation adjustments are included in accumulated other comprehensive income, a separate component of stockholders’ equity.
Cash and Cash Equivalents - Cash and cash equivalents consist of cash and highly liquid investments with an original maturity of three months or less at the date of purchase. The balance, at times, may exceed federally insured limits.
Accounts Receivable - Accounts receivable are shown net of an allowance for doubtful accounts of $182,488 and $133,696 as of December 31, 2019 and 2018, respectively. The Company evaluates the adequacy of its allowances by analyzing the aging of receivables, customer financial condition, historical collection experience, the value of any collateral and other economic and industry factors. Actual collections may differ from historical experience, and if economic, business or customer conditions deteriorate significantly, adjustments to these reserves may be required. When the Company becomes aware of factors that indicate a change in a specific customer’s ability to meet its financial obligations, the Company records a specific reserve for credit losses. Accounts receivable from a large customer accounted for 18.8% of the Company’s total accounts receivable balance at December 31, 2019. As of December 31, 2018, there was no significant accounts receivable concentration.
Inventory - Inventory is comprised of film, film-based products and supplies which are valued at lower of cost or net realizable value, with cost determined on a weighted average cost basis. We provide reserves for discontinued and excess inventory based upon historical demand, forecasted usage, estimated customer requirements and product line updates. As of December 31, 2019 and 2018, inventory reserves were $120,826 and $185,056, respectively.
Property, Plant and Equipment - Property and equipment are recorded at cost, except property and equipment acquired in connection with the Company’s business combinations, which are recorded at fair value on the date of acquisition. Expenditures which improve or extend the life of the respective assets are capitalized, whereas expenditures for normal repairs and maintenance are charged to operations as incurred. Depreciation expense is computed using the straight-line method as follows:
Furniture and fixtures
-   5 years
Computer equipment
-   3-4 years
Vehicles
-   5 years
Equipment
-   5-8 years
Leasehold improvements
-   shorter of lease term or estimate useful life
Plotters
-   4 years

The following table presents geographic property, plant and equipment, net by region as of December 31:
 
2019
 
2018
United States
$
2,410,737

 
$
2,288,792

Canada
519,066

 
421,588

Europe
679,112

 
475,345

Other
405,738

 
198,481

Consolidated
$
4,014,653

 
$
3,384,206


Goodwill -  Goodwill represents the excess purchase price over the fair value of tangible net assets acquired in business combinations after amounts have been allocated to intangible assets. Goodwill is not amortized, but is reviewed for impairment during the last quarter of each year, or whenever events occur or

43

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

circumstances change that would more likely than not reduce the fair value of a reporting unit below its carrying amount, using a discounted cash flow model and comparable market values of each reporting unit. Goodwill balances are assessed at the subsidiary level. The Company recognized a goodwill impairment loss in connection with the closing of one installation location during the year ended December 31, 2019. Refer to Note 5, Goodwill for more information related to this impairment.
The following table presents geographic Goodwill by region as of December 31:
 
2019
 
2018
United States
$
617,334

 
$
617,334

Canada
1,740,884

 
1,701,826

Other
48,294

 
3,628

Consolidated
$
2,406,512

 
$
2,322,788


Intangible Assets - Intangible assets consist primarily of software, customer relationships, trademarks and non-compete agreements. These assets are amortized on a straight-line basis over the period of time in which their expected benefits will be realized. Indefinite-lived trade names are not amortized but are tested at least annually for impairment.
The following table presents geographic Intangible assets, net by region as of December 31:
 
2019

2018
United States
$
2,074,235

 
$
1,891,479

Canada
1,431,247

 
1,652,347

Europe
81,612

 
1,773

Other
233,366

 
258,427

Consolidated
$
3,820,460

 
$
3,804,026


The following table presents the anticipated useful lives of intangible assets:
Trademarks
 - 10 years
Software
 - 5 years
Trade name
 - 10-15 years
Contractual and customer relationships
 - 9-10 years
Non-compete
 - 3-5 years
Other
 - 10 years

Impairment of Long-Lived Assets - The Company reviews and evaluates long-lived assets for impairment when events or circumstances indicate that the carrying amount of an asset may not be recoverable. When the undiscounted expected future cash flows are not sufficient to recover an asset’s carrying amount, the fair value is compared to the carrying value to determine the impairment loss to be recorded. Long-lived assets to be disposed of are reported at the lower of carrying amount or fair value, less the cost to sell. Fair values are determined by independent appraisals or expected sales prices based upon market participant data developed by third party professionals or by internal licensed real estate professionals. Estimates of future cash flows and expected sales prices are judgments based upon the Company’s experience and knowledge of operations. These estimates project cash flows several years into the future and are affected by changes in the economy, real estate market conditions and inflation.

44

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

The Company recognized an intangible asset impairment loss in connection with the closing of one installation location during the year ended December 31, 2019. Refer to Note 4, Intangible Assets, Net for more information related to this impairment. No impairment was recorded during the year ended December 31, 2018.
Revenue Recognition - Our revenue is comprised primarily of product and services sales where we act as principal to the transaction.  All revenue is recognized when the Company satisfies its performance obligation(s) by transferring control/final benefit from the promised product or service to our customer. Due to the nature of our sales contracts, the majority of our revenue is recognized at a point in time. A performance obligation is a contractual promise to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. Revenue is recorded net of returns and allowances. Sales, value add, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are accounted for as a fulfillment obligation, on a net basis, and are included in cost of sales. See Note 2, Revenue Recognition, for additional accounting policies and transition disclosures.
Research and Development - Research costs are charged to operations when incurred. Software development costs, including costs associated with developing software patterns, are expensed as incurred unless the Company incurred these expenses in the development of a new product or long-lived asset. Research and development costs were $602,446 and $223,886 in the years ended December 31, 2019 and 2018, respectively.
Advertising costs - Advertising costs are charged to operations when incurred. Advertising costs were $908,585 and $572,218 in the years ended December 31, 2019 and 2018, respectively.
Provisions and Warranties - We provide a warranty on our products. Liability under the warranty policy is based on a review of historical warranty claims. Adjustments are made to the accruals as claims data experience warrant. The following table presents a summary of our warranty liabilities as of December 31, 2019 and 2018:
 
2019
 
2018
Warranty balance at beginning of period
$
70,250

 
$
95,882

Warranties assumed in period
384,214

 
370,502

Payments
(388,873
)
 
(396,134
)
Warranty balance at end of period
$
65,591

 
$
70,250


Income Taxes - Deferred income tax assets and liabilities are computed for differences between the financial statement and tax bases of assets and liabilities that will result in taxable or deductible amounts in the future. Such deferred income tax asset and liability computations are based on enacted tax laws and rates applicable to periods in which the differences are expected to affect taxable income. Valuation allowances are established when necessary to reduce deferred tax assets to the amounts expected to be realized. Income tax expense is the tax payable or refundable for the period plus or minus the change during the period in deferred and other tax assets and liabilities.
Accumulated Other Comprehensive Income (Loss) (“AOCI”) - The Company reports comprehensive income (loss) that includes net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to expenses, gains and losses that are not included in net earnings. These amounts are also presented in the consolidated statements of comprehensive income. As of December 31, 2019 and 2018, respectively, AOCI relates to foreign currency translation adjustments.
Earnings Per Share - Basic earnings per share amounts are calculated by dividing net income for the year attributable to common stockholders by the weighted average number of common shares outstanding

45

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

during the year. Diluted earnings per share amounts are calculated by dividing the net income attributable to common stockholders by the weighted average number of shares outstanding during the period plus the weighted average number of shares that would be issued on the conversion of all the dilutive potential ordinary shares into common shares.
Business Combinations - Identifiable assets acquired and liabilities and contingent liabilities assumed in a business combination are measured initially at their fair values at the acquisition date, irrespective of the extent of any non-controlling interest. The excess of the fair value of the consideration transferred including the recognized amount of any non-controlling interest in the acquiree, over the fair value of the Company’s share of the identifiable net assets acquired is recorded as goodwill. Acquisition-related expenses are recognized separately from the business combination and are recognized as general and administrative expense as incurred.
Fair Value - Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Assets and liabilities measured at fair value are classified using the following hierarchy, which is based upon the transparency of inputs to the valuation as of the measurement date:
Level 1:
Valuation is based on observable inputs such as quoted market prices (unadjusted) for identical assets or liabilities in active markets.
Level 2:
Valuation is based on inputs such as quoted market prices for similar assets or liabilities in active markets or other inputs that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the financial instrument.
Level 3:
Valuation is based upon other unobservable inputs that are significant to the fair value measurement.
In making fair value measurements, observable market data must be used when available. When inputs used to measure fair value fall within different levels of the hierarchy, the level within which the fair value measurement is categorized is based on the lowest level input that is significant to the fair value measurement.
Recently Adopted Accounting Pronouncements
In February 2016, the Financial Accounting Standards Board issued ASU 2016-02, “Leases” (“the new lease standard” or “ASC 842”), which requires an entity to recognize both assets and liabilities arising from financing and operating leases, along with additional qualitative and quantitative disclosures. The new lease standard requirements were effective for annual reporting periods beginning after December 15, 2018, including interim periods within that reporting period. The Company adopted this standard effective January 1, 2019. In adopting this standard, the Company elected the package of practical expedients afforded thereby. This election allowed the Company, among other things, to carry forward prior lease classifications. Pursuant to the adoption of this standard, Right-Of-Use (“ROU”) assets and operating lease liabilities (current and long-term portions) as of December 31, 2019 were $5,079,110 and $5,136,650, respectively. Refer to Note 15 for additional information related to the adoption of this standard.
Recent Accounting Pronouncements Issued and Not Yet Adopted
In June 2016, the FASB issued ASU 2016-13, “Financial Instruments — Measurement of Credit Losses on Financial Instruments”, which requires measurement and recognition of expected credit losses for financial assets held. As a smaller reporting company, ASU 2016-13 is effective for the Company beginning January 1, 2023 and is required to be applied prospectively. We are currently evaluating the impact that ASU 2016-13 will have on our consolidated financial statements.

46

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

2.    REVENUE
Revenue recognition
The Company recognizes revenue when it satisfies a performance obligation by transferring control of the promised goods and services to a customer, in an amount that reflects the consideration that it expects to receive in exchange for those goods or services. This is achieved through applying the following five-step model:
Identification of the contract, or contracts, with a customer;
Identification of the performance obligations in the contract;
Determination of the transaction price;
Allocation of the transaction price to the performance obligations in the contract; and
Recognition of revenue when, or as, the Company satisfies a performance obligation.
The Company generates substantially all of its revenue from contracts with customers, whether formal or implied. Sales taxes collected from customers are remitted to the appropriate taxing jurisdictions and are excluded from sales revenue as the Company considers itself a pass-through conduit for collecting and remitting sales taxes, with the exception of taxes assessed during the procurement process of select inventories. Shipping and handling costs are included in cost of sales.
Revenue from product and services sales are recognized when control of the goods is transferred to the customer which occurs at a point in time typically upon shipment to the customer or completion of the service. This standard applies to all contracts with customers, except for contracts that are within the scope of other standards, such as leases, insurance, collaboration arrangements and financial instruments.
Based upon the nature of the products the Company sells, its customers have limited rights of return which are immaterial. Discounts provided by the Company to customers at the time of sale are recognized as a reduction in sales as the products are sold.
Warranty obligations associated with the sale of our products are assurance-type warranties that are a guarantee of the product’s intended functionality and, therefore, do not represent a distinct performance obligation within the context of the contract. Warranty expense is included in cost of sales.
We apply a practical expedient to expense direct costs of obtaining a contract when incurred because the amortization period would have been one year or less.
Under its contracts with customers, the Company stands ready to deliver product upon receipt of a purchase order. Accordingly, the Company has no performance obligations under its contracts until its customers submit a purchase order. The Company does not enter into commitments to provide goods or services that have terms greater than one year. In limited cases, the Company does require payment in advance of shipping product. Typically, product is shipped within a few days after prepayment is received. These prepayments are recorded as contract liabilities on the consolidated balance sheet and are included in accounts payable and accrued liabilities (Note 9). As the performance obligation is part of a contract that has an original expected duration of less than one year, the Company has applied the practical expedient under ASC 606 to omit disclosures regarding remaining performance obligations.
The following table summarizes transactions included within contract liabilities for the years ended December 31, 2019 and 2018, respectively.

47

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

Balance, December 31, 2017
$
1,701,356

Revenue recognized related to payments included in the December 31, 2017 balance
(1,701,356
)
Balance, Payments received for which performance obligations have not been satisfied
136,213

Effect of Foreign Currency Translation

Balance, December 31, 2018
$
136,213

Revenue recognized related to payments included in the December 31, 2018 balance
(115,670
)
Payments received for which performance obligations have not been satisfied
537,683

Effect of Foreign Currency Translation
1,006

Balance, December 31, 2019
$
559,232


When the Company transfers goods or services to a customer, payment is due, subject to normal terms, and is not conditional on anything other than the passage of time. Typical payment terms range from due upon receipt to 30 days, depending on the type of customer and relationship. At contract inception, the Company expects that the period of time between the transfer of goods to the customer and when the customer pays for those goods will be less than one year, which is consistent with the Company’s standard payment terms. Accordingly, the Company has elected the practical expedient under ASC 606 to not adjust for the effects of a significant financing component. As such, these amounts are recorded as receivables and not contract assets.
The table below sets forth the disaggregation of revenue by product category for the years ended December 31,
 
2019
 
2018
Product Revenue
 
 
 
Paint protection film
$
97,341,865

 
$
85,495,382

Window film
11,384,437

 
7,309,773

Other
3,478,437

 
2,721,195

Total
112,204,739

 
95,526,350

 
 
 
 
Service Revenue
 
 
 
Software
$
3,263,391

 
$
2,566,960

Cutbank credits
7,253,610

 
6,197,250

Installation labor
6,620,527

 
5,211,633

Training
590,614

 
418,421

Total
17,728,142

 
14,394,264

 
 
 
 
Total
$
129,932,881

 
$
109,920,614



48

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

Because many of our international customers require us to ship their orders to freight forwarders located in the United States, we cannot be certain about the ultimate destination of the product. The following table represents our estimate of sales by geographic regions based on our understanding of ultimate product destination based on customer interactions, customer locations and other factors:
 
Twelve Months Ended
December 31,
 
2019
 
2018
United States
$
60,452,238

 
$
46,077,624

China
30,490,859

 
32,279,335

Canada
17,912,548

 
15,146,869

Continental Europe
7,419,524

 
5,734,925

United Kingdom
3,784,535

 
2,725,925

Asia Pacific
4,370,156

 
2,754,495

Latin America
2,098,873

 
1,799,180

Middle East/Africa
3,149,235

 
2,806,502

Other
254,913

 
595,759

Total
$
129,932,881

 
$
109,920,614


Our largest customer (the China Distributor) accounted for 23.5% and 29.2% of our net sales during the year ended December 31, 2019 and 2018, respectively.
3.    PROPERTY AND EQUIPMENT, NET
Property and equipment consists of the following:
 
December 31, 2019
 
December 31, 2018
Furniture and fixtures
$
1,168,894

 
$
956,467

Computer equipment
1,151,295

 
939,979

Vehicles
683,213

 
730,765

Equipment
1,648,656

 
1,079,503

Leasehold improvements
1,479,594

 
941,627

Plotters
839,455

 
544,080

Construction in Progress
306,100

 
646,576

Total property and equipment
7,277,207

 
5,838,997

Less: accumulated depreciation
3,262,554

 
2,454,791

Property and equipment, net
$
4,014,653

 
$
3,384,206


Depreciation expense for the years ended December 31, 2019 and 2018 was $915,918 and $735,983, respectively.

49

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

4.    INTANGIBLE ASSETS, NET
Intangible assets consists of the following:
 
December 31, 2019
 
December 31, 2018
Trademarks
$
309,395

 
$
289,734

Software
2,288,062

 
1,635,731

Trade name
492,408

 
457,766

Contractual and customer relationships
3,010,480

 
2,947,264

Non-compete
268,459

 
261,914

Other
208,012

 
150,267

Total cost
6,576,816

 
5,742,676

Less: Accumulated amortization
2,756,356

 
1,938,650

Intangible assets, net
$
3,820,460

 
$
3,804,026


Amortization expense for the years ended December 31, 2019 and 2018 was $781,105 and $642,801, respectively. Based on the carrying value of definite-lived intangible assets as of December 31, 2019, we estimate our future amortization expense will be as follows:
2020
$
796,029

2021
703,624

2022
617,107

2023
576,160

2024
461,122

Thereafter
$
666,417


During the year ended December 31, 2019, the Company’s wholly-owned subsidiary, Protex Canada, sold a franchise territory to a new franchisee in Quebec. In connection with this arrangement, the Company closed its Quebec City installation location and recorded an impairment against all previously recognized intangible assets for that location. The Company recorded an impairment loss of $30,480 related to the intangible assets other than goodwill associated with this closed location. This impairment loss is reflected in general and administrative expense on the consolidated statement of income.

50

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

5.    GOODWILL
The following table summarizes changes in the carrying amounts of goodwill for the years ended December 31, 2019 and 2018:
Balance at December 31, 2017
$
1,856,642

Additions
576,173

Foreign currency translation
(110,027
)
Balance at December 31, 2018
$
2,322,788

 
 
Balance at December 31, 2018
$
2,322,788

Additions
44,584

Impairment
(35,884
)
Foreign currency translation
75,024

Balance at December 31, 2019
$
2,406,512


During the year ended December 31, 2019, the Company’s wholly-owned subsidiary, Protex Canada, sold a franchise territory to a new franchisee in Quebec. In connection with this arrangement, the Company closed its Quebec City installation location and recorded an impairment against all previously recognized intangible assets for that location. The Company recorded an impairment loss of $35,884 related to the Goodwill associated with this closed location. This impairment loss is reflected in general and administrative expense on the consolidated statement of income. No impairment was recorded during the year ended December 31, 2018.
6.    INVENTORIES
The components of inventory are summarized as follows:
 
December 31, 2019
 
December 31, 2018
Film and film based products
$
13,538,610

 
$
9,399,067

Other products
1,226,708

 
1,264,862

Packaging and supplies
496,661

 
320,738

Inventory reserve
(120,826
)
 
(185,056
)
 
$
15,141,153

 
$
10,799,611


7.    DEBT
REVOLVING FACILITIES
The Company has an $8,500,000 revolving line of credit agreement with The Bank of San Antonio to support its continuing working capital needs. The Bank of San Antonio has been granted a security interest in substantially all of the Company’s current and future assets. The line of credit has a variable interest rate of the Wall Street Journal prime rate plus 0.75% with a floor of 4.25% and matures on May 5, 2020. The interest rate was 5.50% and 6.25% as of December 31, 2019 and 2018, respectively. As of December 31, 2019 and 2018, no balance was outstanding on this line.

51

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

The credit agreement contains customary covenants including covenants relating to complying with applicable laws, delivery of financial statements, payment of taxes and maintaining insurance. The credit agreement also requires that  XPEL must maintain debt service coverage (EBITDA divided by the current portion of long-term debt +interest) of 1.25:1 and debt to tangible net worth of 4.0:1 on a rolling four quarter basis. The credit agreement also contains customary events of default including the failure to make payments of principal and interest, the breach of any covenants, the occurrence of a material adverse change, and certain bankruptcy and insolvency events.
As of December 31, 2019 and 2018, the Company was in compliance with all debt covenants.
XPEL Canada Corp., a wholly owned subsidiary of XPEL, Inc., also has a CAD $4,500,000 revolving line of credit agreement with HSBC Bank Canada to support its continuing working capital needs. The line has a variable interest rate of the HSBC Canada Bank’s prime rate plus 0.25%. The interest rate was 4.20% and 5.75% as of December 31, 2019 and 2018, respectively. As of December 31, 2019 and 2018, no balance was outstanding on this line of credit. This facility is guaranteed by the Company.
NOTES PAYABLE
As part of its acquisition strategy, the Company uses a combination of cash and unsecured non-interest bearing promissory notes payable to fund its business acquisitions. The Company discounts the promissory note to fair value using market interest rates at the time of the acquisition.
Notes payable are summarized as follows:
 
Weighted Average Interest Rate
 
Matures
 
December 31, 2019
 
December 31, 2018
Acquisition notes payable
5.76%
 
2022
 
$
769,507

 
$
1,821,387

 
 
 
 
 
 
 
 
Current portion
 
 
 
 
462,226

 
853,150

Total long-term debt
 
 
 
 
$
307,281

 
$
968,237


The approximate future principal payments on the notes payable are as follows:
2020
$
463,025

2021
300,873

2022
42,969

2023

2024

Thereafter

 
$
806,867


8.    EMPLOYEE BENEFIT PLAN
The Company sponsors defined contribution plans for substantially all employees. Annual Company contributions under the plans are discretionary. Company contribution expense during the years ended December 31, 2019 and 2018 was $174,744 and $124,431, respectively.

52

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

9.    ACCOUNTS PAYABLE AND ACCRUED LIABILITIES
The following table presents significant accounts payable and accrued liability balances as of the periods ending:
 
December 31, 2019
 
December 31, 2018
Trade payables
$
7,440,965

 
$
3,905,187

Payroll liabilities
1,367,340

 
1,194,237

Contract liabilities
559,232

 
136,213

Other liabilities
829,816

 
1,056,456

 
$
10,197,353

 
$
6,292,093


10.    CAPITAL STOCK
Shares issued and outstanding at both December 31, 2019 and 2018 were 27,612,597. Par value of these shares for these same dates was $27,613.
11.    STOCK OPTIONS
The Company has an Incentive Stock Option Plan (the “Plan”). The Plan provides for options to be granted to the benefit of employees, directors and third parties. The maximum number of shares of Common Stock allocated to and made available to be issued under the Plan shall not exceed 10% of the shares of Common Stock issued and outstanding (on a non-diluted basis) at any time. The exercise price of options granted under the Plan will be determined by the directors, but will at least be equal to the closing trading price of the Common Stock on the last trading day prior to the grant and otherwise the fair market price as determined by the Board of Directors. The term of any option granted shall not exceed ten years. Except as otherwise provided elsewhere in the Stock Option Plan, the options shall be cumulatively exercisable in installments over the option period at a rate to be fixed by the Board of Directors. The Company does not provide financial assistance to any optionee in connection with the exercise of options. At December 31, 2019, there were no options outstanding under the Plan.
12.    FAIR VALUE MEASUREMENTS
Financial instruments include cash and cash equivalents (level 1), accounts receivable, accounts payable and long-term debt. The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable and short-term borrowings approximate fair value because of the near-term maturities of these financial instruments. The carrying value of the Company’s notes payable approximates fair value due to the relatively short-term nature and interest rates of the notes. For discussion of the fair value measurements related to goodwill refer to Note 5, Goodwill, of the consolidated financial statements for periods ended December 31, 2019 and December 31, 2018.
The estimated fair value of debt is based on market quotes for instruments with similar terms and remaining maturities (Level 2 inputs and valuation techniques).
ASC 820 prioritizes the inputs to valuation techniques used to measure fair value into the following hierarchy:
Level 1 – Observable inputs such as quoted prices (unadjusted) in active markets for identical assets or liabilities.
Level 2 – Inputs other than the quoted prices in active markets that are observable either directly or indirectly, including: quoted prices for similar assets and liabilities in active markets; quoted prices for identical

53

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

or similar assets and liabilities in markets that are not active or other inputs that are observable or can be corroborated by observable market data.
Level 3 – Unobservable inputs that are supported by little or no market data and require the reporting entity to develop its own assumptions.
13.    INCOME TAXES
Income before income taxes classified by source of income was as follows:
 
2019

2018
Domestic
$
15,375,731

 
$
10,008,013

International
1,574,697

 
1,473,292

Income before income taxes
$
16,950,428

 
$
11,481,305


The Tax Cuts and Jobs Act (the “Tax Act”), enacted on December 22, 2017, reduced the U.S. federal corporate tax rate from 35 percent to 21 percent. The amount recorded in 2018 related to the remeasurement of the Company’s deferred tax balance was $0.1 million.
In January 2018, the FASB released guidance on the accounting for tax on the global intangible low-taxed income ("GILTI") provisions of the Tax Act. The GILTI provisions impose a tax on foreign income in excess of a deemed return on tangible assets of foreign corporations. The guidance indicates that either accounting for deferred taxes related to GILTI inclusions or treating any taxes on GILTI inclusions as period cost are both acceptable methods subject to an accounting policy election. For the years ended December 31, 2019 and 2018, the Company has elected to treat any potential GILTI inclusions as a period cost.
The Tax Act also provided for a deduction to incent US corporations to provide goods and services to foreign customers known as foreign derived intangible income (“FDII”). Due to a lack of clarity regarding the calculation of FDII, the treasury department issued proposed regulations in March 2019 that included rules for determining various factors of the FDII calculation. After a public hearing on the proposed regulation in July 2019, the Treasury Department issued new documentation guidance on FDII in September 2019. Subsequent to the issuance of this additional guidance, the Company filed its 2018 corporate income tax return which included a FDII deduction yielding a tax benefit of approximately $.2 million. This 2018 tax benefit was included as a return to provision adjustment in calculation of the Company’s 2019 income tax expense.

54

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

Income Tax Expense
The provision for income taxes differs from the United States federal statutory rate as follows:
 
2019

2018
Income before income taxes
$
16,950,428

 
$
11,481,305

Statutory rate
21
%
 
21
%
 
3,559,590

 
2,411,074

 

 


State taxes net of federal benefit
31,446

 
183,468

Nondeductible/nontaxable items
115,679

 

Foreign tax rate differential
45,994

 
81,474

Foreign derived intangible income benefit
(287,606
)
 

Return to provision estimated revision
(358,986
)
 

Other - net
(150,761
)
 
84,057

Income tax expense
$
2,955,356

 
$
2,760,073


The foreign tax rate differential reflects the impact of the differences in our various international tax rates and our US statutory rate.
The components of the income tax provision (benefit) are as follows:
 
Years ended December 31
 
2019

2018
Current Income Tax Expense
 
 
 
Federal
$
2,412,157

 
$
2,182,415

Foreign
518,528

 
431,638

State
3,068

 
232,238

Total Current Income Tax Expense
2,933,753

 
2,846,291

Deferred Income Tax Expense/(Benefit)

 

Federal
99,870

 
(65,801
)
Foreign
(78,267
)
 
(20,417
)
Total Deferred Income Tax Expense/(Benefit)
21,603

 
(86,218
)
Total
$
2,955,356

 
$
2,760,073



55

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

Deferred income taxes reflect the net tax effects of temporary differences between the carrying amount of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes. Significant components of the Company’s net deferred income taxes are as follows:
 
Years ended December 31
 
2019

2018
DEFERRED TAX ASSETS:
 
 
 
Allowance for Doubtful Accounts
$
31,073

 
$
161

263(A) Adjustment
31,427

 
17,421

Accrued Expenses
212

 
9,485

Inventory Reserve
9,725

 
34,978

Accretion of Acquisition Notes

 
8,156

Unrealized loss
6,282

 

State Tax Credit
27,867

 
48,770

NOL Carryforward and Other
162,005

 
249,772

Total deferred tax assets
268,591

 
368,743

 

 

DEFERRED TAX LIABILITIES:

 

Fixed and Intangible Assets
$
860,592

 
$
824,822

Unrealized Gain
12,713

 
14,146

Accretion

 
8,639

Total deferred tax liabilities
873,305

 
847,607

Total net deferred tax liabilities
$
(604,714
)
 
$
(478,864
)

In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company regularly assesses the likelihood that the deferred tax assets will be recovered from future taxable income. The Company considers projected future taxable income and ongoing tax planning strategies, then records a valuation allowance, if deemed necessary, to reduce the carrying value of the net deferred taxes to an amount that is more likely than not able to be realized. Based upon the Company’s assessment of all available evidence, including the previous two years of taxable income and loss after permanent items, estimates of future profitability, and the Company’s overall prospects of future business, the Company determined that it is more likely than not that the Company will realize all of its deferred tax assets in the future. The Company will continue to assess the potential realization of deferred tax assets on an annual basis, or an interim basis if circumstances warrant. If the Company’s actual results and updated projections vary significantly from the projections used as basis for this determination, the Company may need to change the valuation allowance against the gross deferred tax assets.
The Company, through XPEL Ltd., has net operating losses of approximately $841,003 available to apply against future taxable income. These losses have no expiration date.
Uncertain Tax Positions
The Company recognizes the tax effects of an uncertain tax position only if it is more likely than not to be sustained based solely upon its technical merits at the reporting date. Interest and penalties associated with unrecognized tax benefits are recorded within income tax expense. The unrecognized tax benefit is the difference between the tax benefit recognized and the tax benefit claimed on the Company’s income tax return. The Company has reviewed its prior year returns and believes that all material tax positions in the current and prior years have been analyzed and properly accounted for and that the risk that additional material uncertain tax positions have not been identified is remote.

56

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

Goodwill and other intangibles acquired in taxable asset purchases are amortized for tax purposes over allowable periods as prescribed by applicable regulatory jurisdictions.
The Company is subject to income taxes in the U.S. federal jurisdiction, and various states and foreign jurisdictions. Tax regulations within each jurisdiction are subject to the interpretation of the related tax laws and regulations and require significant judgment to apply. The Company is still subject to U.S. federal, state and local, or non-U.S. income tax examinations by tax authorities for the years 2012 and after. There are no ongoing or pending IRS, state or foreign examinations.
14.    COMMITMENTS AND CONTINGENCIES
CONTINGENCIES
In the ordinary course of business activities, the Company may be contingently liable for litigation and claims with customers, suppliers and former employees. Management believes that adequate provisions have been recorded in the accounts where required. Management also has determined that the likelihood of any litigation and claims having a material impact on our results of operations, cash flows or financial position is remote.
SUPPLY AGREEMENT
Through our Amended and Restated Supply Agreement that we entered into with our primary supplier in March 2017, we have exclusive rights to commercialize, market, distribute and sell its automotive aftermarket products through March 21, 2020, which term automatically renews for successive two year periods thereafter unless terminated at the option of either party with two months’ notice. During such term, we have agreed to use commercially reasonable efforts to purchase a minimum of $5,000,000 of products quarterly from this principal supplier, with a yearly minimum purchasing requirement of $20,000,000.
15.    LEASES
We lease space under non-cancelable operating leases for office space, warehouse facilities, and installation locations. These leases do not have significant rent holidays, rent escalation provisions, leasehold improvement incentives, or other build-out clauses. Neither do these leases contain contingent rent provisions. We also lease vehicles and equipment to support our global operations. We have elected the practical expedient to combine lease and non-lease components. We have also elected to adopt the package of practical expedients that allow us not to reassess whether expired leases are or contain leases, not to reassess the lease classification of existing leases, and not to reassess initial direct costs for existing leases.
Some of our leases contain options to renew. The exercise of lease renewals is at our sole discretion; therefore, the renewals to extend the lease terms are not included in our ROU assets as it is not reasonably certain that they will be exercised. We regularly evaluate the renewal options and, when they are reasonably certain of exercise, we include the renewal period in our lease term.
As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at the lease commencement date in determining the present value of the lease payments. We have a centrally managed treasury function; therefore, based on the applicable lease terms and the current economic environment, we apply a portfolio approach for determining the incremental borrowing rate.
Balance sheet information related to operating leases is as follows:

57

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

 
December 31, 2019
Operating lease right-of-use assets
$
5,079,110

 
 
Current portion of operating lease liabilities
1,126,701

Noncurrent portion of operating lease liabilities
4,009,949

Total operating lease liabilities
$
5,136,650


We had operating lease expense of $1,210,969 for the year ended December 31, 2019. Variable lease payments and short-term lease expenses for the same period were $492,771 and $157,253, respectively, and we made cash payments of $1,235,264, on leases subject to the accounting treatment described above in Note 1.
Weighted-average information associated with the measurement of our remaining operating lease obligations is as follows:
 
December 31, 2019
Weighted-average remaining lease term (in years)
5.6

Weighted-average discount rate
5.84
%

The following table summarizes the maturity of our operating lease liabilities as of December 31, 2019:
2020
$
1,060,213

2021
1,084,622

2022
1,011,538

2023
908,901

2024
580,481

Thereafter
1,077,086

     Total operating lease payments
5,722,841

Less: interest
(586,191
)
Total operating lease liabilities
$
5,136,650


For the year ended December 31, 2018, rent expense related to operating leases was approximately $1,209,208. Future minimum lease payments, under non-cancelable operating leases as of December 31, 2018 were as follows:
2019
$
869,492

2020
736,169

2021
667,551

2022
601,593

2023
528,427

Thereafter
1,372,388

 
$
4,775,620


16.    BUSINESS COMBINATIONS

58

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018


Business combinations completed before year-end - The Company completed the following acquisitions during the years ended December 31, 2019 and 2018:
Acquisition Date
 
Name/Location/Description
 
Purchase Price
Acquisition Type
 
Acquisition Purpose
April 1, 2018
 
9352-4692, Quebec, Inc., Quebec City, Quebec, Canada - Paint protection and window film installation shop
 
$87,248
Share Purchase
 
Local market expansion
June 1, 2018
 
eShields, LLC, La Verne, CA, USA - Antimicrobial film distributor
 
$496,982
Asset Purchase
 
Product line expansion
August 1, 2018
 
9341-9182 Quebec, Inc., Pointe Claire, Quebec, Canada - Paint protection and window film installation shop
 
$363,239
Share Purchase
 
Local market expansion
August 1, 2018
 
9846905 Canada, Inc., Calgary, Alberta, Canada - Paint protection and window film installation shop
 
$332,798
Share Purchase
 
Local market expansion
November 1, 2018
 
Apogee, Corp., Yilan City, Yilan County, Taiwan - Paint protection and window film distributor
 
$638,552
Share Purchase
 
Local market expansion
December 20, 2019
 
Paintshield, Ltd., Salisbury, Wiltshire, United Kingdom - Paint protection and window film installation shop
 
$127,623
Asset Purchase
 
Local market expansion

The total purchase price for acquisitions completed during the years ended December 31, 2019 and 2018 are as follows:
 
December 31,
 
2019
 
2018
 
Paintshield, Ltd.
 
2018 Acquisitions
Purchase Price
 
 
 
Cash
$
127,623

 
$
831,934

Promissory note

 
998,668

Forgiveness of debt

 
88,216

 
$
127,623

 
$
1,918,818

 
 
 
 
Allocation
 
 
 
Cash
$

 
$
41,407

Accounts receivable

 
155,434

Inventory

 
494,663

Prepaid expenses and other assets

 
78,631

Property and equipment
5,038

 
167,622

Trade name
25,918

 

Acquired patterns
52,083

 

Customer relationships

 
609,751

Goodwill
44,584

 
576,173

Accounts payable

 
(126,715
)
Other accrued liabilities

 
(78,148
)
 
$
127,623

 
$
1,918,818


Intangible assets acquired in the Paintshield acquisition have a weighted average useful life of 2 years. Intangible assets acquired in 2018 have a weighted average useful life of 9 years.
Goodwill for these acquisitions relates to the expansion into new geographical areas as well as the addition of a new distribution channel. The goodwill also represents the acquired employee knowledge of the various

59

XPEL Inc.
Notes to Consolidated Financial Statements
December 31, 2019 and 2018

markets, distribution knowledge by the employees of the acquired businesses, as well as the expected synergies resulting from the acquisitions.

Acquisition costs incurred related to these acquisitions were immaterial and were included in selling, general and administrative expenses.
The acquired companies were consolidated into our financial statements on their respective acquisition dates. Due to the timing of the transaction, the aggregate revenue and operating income (loss) of the Paintshield acquisition were immaterial to our 2019 consolidated financial statements. The aggregate revenue and operating income (loss) of our 2018 acquisitions consolidated into our 2018 consolidated financial statements from the respective dates of acquisition were $613,701 and $43,030, respectively. The following unaudited financial information presents our results, including the estimated expenses relating to the amortization of intangibles purchased, as if the acquisitions during the years ended December 31, 2019 and 2018 had occurred on January 1, 2018, respectively:
 
Twelve Months Ended
 
December 31,
 
2019 (Unaudited)
 
2018 (Unaudited)
Revenue
$
130,507,185

 
$
111,048,518

Net income
$
13,981,033

 
$
8,480,919


The pro forma unaudited results do not purport to be indicative of the results which would have been obtained had the acquisition been completed as of the beginning of the earliest period presented or of results that may be obtained in the future. In addition, they do not include any benefits that may result from the acquisition due to synergies that may be derived from the elimination of any duplicative costs.
17.    SUBSEQUENT EVENTS.
Business combinations completed after year-end - On February 1, 2020 the Company purchased the shares of Protex Centre, a previously independent paint protection installation shop based in Montreal, Quebec, Canada. In this acquisition, the Company acquired 100% of the shares of Protex Centre. This acquisition was completed in order to expand the Company’s direct penetration in the greater Quebec market. The Company funded this purchase with cash of CAD 2,000,000 and unsecured promissory notes issued to the sellers with a combined total face value of CAD 1,250,000.
The allocation of the purchase price has not yet been finalized as there was insufficient time between the closing of the purchase and the release of this Annual Report.
Buy-out of minority interest - On February 1, 2020, the Company purchased the remaining 15% minority interest of XPEL Ltd., the subsidiary of the Company operating in the United Kingdom. The purchase price of this minority interest was GBP 600,000.
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
We have established and maintain a system of disclosure controls and procedures that are designed to provide reasonable assurance that information required to be disclosed in our reports filed with the SEC pursuant to the Securities Exchange Act of 1934, as amended (Exchange Act), is recorded, processed, summarized and reported within the time periods specified in the rules and forms of the SEC and that such information is accumulated and communicated to our management, including our Chief Executive Officer (“CEO”) and Chief Financial Officer (“CFO”), as appropriate, to allow timely decisions regarding required disclosures.

60



Management, with the participation of our CEO and CFO, has evaluated the effectiveness of the design and operation of our disclosure controls and procedures (as defined in Rules 13a-15(e) and 15d-15(e) of the Exchange Act) as of the end of the period covered by this report.  Based on such evaluation, our CEO and CFO have each concluded that as of the end of the period covered by this report, our disclosure controls and procedures were effective to provide reasonable assurance that information required to be disclosed by us in reports that we file or submit under the Exchange Act is recorded, processed, summarized and reported within the time periods specified in the SEC’s rules and forms and that such information is accumulated and communicated to our management, including the CEO and CFO, as appropriate, to allow timely decisions regarding required disclosures.
Changes in Internal Control over Financial Reporting
There were no changes in our internal control over financial reporting that occurred during the last fiscal quarter that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.
Item 9B. Other Information
Not applicable.
Part III
Item 10. Directors, Executive and Corporate Governance
The information required by this Item is set forth under the headings “Corporate Governance,” “Directors,” “Executive Officers” and “Other Information—Security Ownership of Certain Beneficial Owners and Management” in the Company’s 2020 Proxy Statement to be filed with the SEC within 120 days after December 31, 2019, and is incorporated herein by reference.
Item 11. Executive Compensation
The information required by this Item is set forth under the heading “Executive Compensation,” under the subheadings “Board Oversight of Risk Management” and “Compensation Committee Interlocks and Insider Participation” under the heading “Corporate Governance” and under the subheadings “Compensation of Directors” and “Director Compensation—2019” under the heading “Directors” in the Company’s 2020 Proxy Statement to be filed with the SEC within 120 days after December 31, 2019, and is incorporated herein by reference.
Item 12. Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters
The information required by this Item is set forth under the headings “Other Information—Security Ownership of Certain Beneficial Owners and Management” and “Other Information—Equity Compensation Plan Information” in the Company’s 2020 Proxy Statement to be filed with the SEC within 120 days after December 31, 2019, and is incorporated herein by reference.
Item 13. Certain Relationships and Related Transactions, and Director Independence
The information required by this Item is set forth under the subheadings “Board Committees”, “Review, Approval, or Ratification of Transactions with Related Persons” and “Transactions with Related Persons” under the heading “Corporate Governance” in the Company’s 2020 Proxy Statement to be filed with the SEC within 120 days after December 31, 2019, and is incorporated herein by reference.
Item 14. Principal Accounting Fees and Services

61



The information required by this Item is set forth under the subheadings “Fees Paid to Auditors” and “Policy on Audit Committee Pre-Approval of Audit and Non-Audit Services Performed by the Independent Registered Public Accounting Firm” under the proposal “Ratification of Appointment of Independent Registered Public Accounting Firm” in the Company’s 2020 Proxy Statement to be filed with the SEC within 120 days after December 31, 2019, and is incorporated herein by reference.

Part IV
Item 15. Exhibits and Financial Statement Schedules
1.
Financial Statements
See Index to Financial Statements at Item 8 herein.
2.
Financial Statement Schedules
Schedules not listed above have been omitted because they are not required, not applicable, or the required information is otherwise included.
3.
Exhibits
The exhibits listed below are filed or furnished as part of this Annual Report or are incorporated herein by reference, in each case as indicated below.
 
 
 
 
Incorporated by Reference
Exhibit Number
 
Description
 
Form
 
Exhibit
 
Filing Date
3.1
 
 
10-12B
 
3.1
 
04/03/2019
3.2
 
 
10-12B
 
3.2
 
04/03/2019
3.3
 
 
10-12B
 
3.3
 
04/03/2019
3.4
 
 
8-K
 
3.1
 
11/18/2019
4.1*
 
 
 
 
 
 
 
10.1
 
 
10-12B/A
 
10.1
 
05/30/2019
10.2
 
 
10-12B/A
 
10.2
 
05/30/2019

62



10.3
 
 
10-12B/A
 
10.3
 
05/30/2019
10.4
 
 
10-12B/A
 
10.4
 
04/24/2019
10.5
 
 
10-12B/A
 
10.5
 
05/30/2019
10.6+
 
 
10-12B
 
10.6
 
04/03/2019
14.1
 
 
10-12B/A
 
14.1
 
04/24/2019
21.1*
 
 
 
 
 
 
 
31.1*
 
 
 
 
 
 
 
31.2*
 
 
 
 
 
 
 
32.1**
 
 
 
 
 
 
 
32.2**
 
 
 
 
 
 
 
101*
 
Inline XBRL Document Set for the consolidated financial statements and accompanying notes in Part II, Item 8, “Financial Statements and Supplementary Data” of this Annual Report on Form 10-K.
 
 
 
 
 
 
104*
 
Inline XBRL for the cover page of this Annual Report on Form 10-K, included in the Exhibit 101 Inline XBRL Document Set.
 
 
 
 
 
 
* Filed herewith
** Furnished herewith
+Management Compensatory Plan or Agreement

Item 16. Form 10-K Summary
None.

63



SIGNATURES
Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.
 
 
 
XPEL, Inc. (Registrant)
 
 
 
 
 
 
By:
/s/ Barry R. Wood
 
 
 
Barry R. Wood
 
 
 
Senior Vice President and Chief Financial Officer
Date:
March 16, 2020
 
(Authorized Officer and Principal Financial and Accounting Officer)
Pursuant to the requirements of the Securities Exchange Act, this report has been signed below by the following persons on behalf of the registrant and in the capacities indicated and on the dates indicated.
Name and Signature
 
Title
 
Date
/s/ Ryan L. Pape
 
Chairman of the Board, President and Director (Principal Executive Officer)
 
March 16, 2020
Ryan L. Pape
 
 
 
/s/ Barry R. Wood
 
Senior Vice President and Chief Financial Officer (Principal Financial and Accounting Officer)
 
March 16, 2020
Barry R. Wood
 
 
 
/s/ John A. Constantine
 
Director
 
March 16, 2020
John A. Constantine
 
 
 
/s/ Richard K. Crumly
 
Director
 
March 16, 2020
Richard K. Crumly
 
 
 
/s/ Michael A. Klonne
 
Director
 
March 16, 2020
Michael A. Klonne
 
 
 
/s/ Mark E. Adams
 
Director
 
March 16, 2020
Mark E. Adams
 
 
 


64
EX-4.1 2 a201910-kexhibit41.htm EXHIBIT 4.1 Exhibit


Exhibit 4.1



DESCRIPTION OF THE REGISTRANT’S SECURITIES REGISTERED PURSUANT TO SECTION 12 OF THE
SECURITIES EXCHANGE ACT OF 1934
The following description of the securities of XPEL, Inc. (the “Company”) is a summary and does not purport to be complete. It is subject to and qualified in its entirety by reference to our articles of incorporation, as amended (“articles of incorporation”), our amended and restated bylaws (“”Amended and Restated Bylaws”), our Annual Report on Form 10-K and the applicable provisions of Chapter 78 of the Nevada Revised Statutes(“the Nevada GCL”).
Description of Capital Stock
Common Stock
Holders of Common Stock are entitled to receive notice of and to attend all meetings of stockholders of the Company. Holders of Common Stock are entitled to cast one vote for each share held of record on all matters submitted to a vote of stockholders and are not entitled to cumulate votes for the election of directors. Holders of our Common Stock do not have preemptive rights to subscribe for additional shares of Common Stock issued by us.
Holders of our Common Stock are entitled to receive dividends as may be declared by the board of directors out of funds legally available for that purpose.
In the event of liquidation, holders of Common Stock are entitled to share pro rata in any distribution of our assets remaining after payment of liabilities, subject to the preferences and rights of the holders of any outstanding shares of preferred stock. All of the outstanding shares of our Common Stock are fully paid and non-assessable.
Preferred Stock
Our articles of incorporation authorize the issuance of up to 10,000,000 shares of preferred stock, par value $0.001 per share, in one or more series with such voting powers, designations, preferences and rights or qualifications as adopted by the Board of Directors. Upon issuance, the shares of preferred stock will be fully paid and non-assessable, which means that its holders will have paid their purchase price in full and we may not require them to pay additional funds. Holders of preferred stock will not have any preemptive rights.
Anti-takeover Effects of Certain Provisions of Bylaws
On May 15, 2018, the Board adopted Amended and Restated Bylaws of the Company (the “Amended and Restated Bylaws”), which were approved by the stockholders of the Company on June 29, 2018. Certain provisions in our Amended and Restated Bylaws summarized below may be deemed to have an anti-takeover effect and may delay, deter or prevent a tender offer or takeover attempt that a stockholder might consider to be in its best interests, including





attempts that might result in a premium being paid over the market value for the Common Stock. Such provisions include:
Authorizing our Board to adopt, amend or repeal our Amended and Restated By-Laws without stockholder approval;
Requiring advance notice of any stockholder nomination for the election of directors or any stockholder proposal;
Requiring any stockholder action to be taken only at a duly called annual or special meeting of the stockholders, and not by written consent;
Authorizing only our Board, and not stockholders, to fix the number of directors; and
Authorizing only our Board to fill director vacancies and newly created directorships.
Exclusive Forum
Our Amended and Restated Bylaws provide that, with certain limited exceptions, unless we consent in writing to the selection of an alternative forum, the state and federal courts located in Bexar County, Texas will be the sole and exclusive forum for any (i) derivative action or proceeding brought on our behalf, (ii) action asserting a claim of, or a claim based on, breach of a fiduciary duty owed by any current or former director, officer, employee or stockholder to us or our stockholders, (iii) action asserting a claim against us or any current or former director, officer, employee or stockholder arising pursuant to any provision of Chapters 78 and 92 of the Nevada Revised Statutes or our Amended and Restated Bylaws or (iv) action assert a claim against us or any current or former director, officer, employee or stockholder (including any beneficial owner of stock) governed by the internal affairs doctrine. The enforceability of similar forum provisions in other companies’ certificates of incorporation has been challenged in legal proceedings, and it is possible that a court could find these types of provisions to be inapplicable or unenforceable. The choice of forum provision does not apply to any actions arising under the Securities Act or the Exchange Act.
Anti-Takeover Statutes
Chapter 78 of the Nevada Revised Statutes, which we refer to as the Nevada GCL, contains two provisions, described below as “Combination Provisions” and the “Control Share Act,” that may make the unsolicited or hostile attempts to acquire control of a corporation through certain types of transactions more difficult.
Restrictions on Certain Combinations between Nevada Resident Corporations and Interested Stockholders
The Nevada GCL includes certain provisions (the “Combination Provisions”) prohibiting certain “combinations” (generally defined to include certain mergers, disposition of assets transactions, and share issuance or transfer transactions) between a resident domestic corporation and an “interested stockholder” (generally defined to be the beneficial owner of 10% or more of the voting power of the outstanding shares of the corporation), except those combinations which are approved by the board of directors before the interested stockholder first obtained a 10% interest in the corporation’s stock. There are additional exceptions to the prohibition, which apply to combinations if they occur more than three years after the interested stockholder’s date of acquiring shares. The Combination Provisions apply unless the corporation elects against their application in its original articles of incorporation or an amendment thereto or timely elected against their application in its bylaws no later than October 31, 1991. Our articles of incorporation and bylaws do not currently contain a provision rendering the Combination Provisions inapplicable.
Nevada Control Share Act





Nevada Revised Statutes 78.378 through 78.3793, inclusive, which we refer to as the Control Share Act, imposes procedural hurdles on and curtails greenmail practices of corporate raiders. The Control Share Act temporarily disenfranchises the voting power of “control shares” of a person or group (“Acquiring Person”) purchasing a “controlling interest” in an “issuing corporation” (as defined in the Nevada GCL) not opting out of the Control Share Act. In this regard, the Control Share Act will apply to an “issuing corporation” unless, before an acquisition is made, the articles of incorporation or bylaws in effect on the tenth day following the acquisition of a controlling interest provide that it is inapplicable. Our articles of incorporation and bylaws do not currently contain a provision rendering the Control Share Act inapplicable.
Under the Control Share Act, an “issuing corporation” is a corporation organized in Nevada which has 200 or more stockholders, at least 100 of whom are stockholders of record and residents of Nevada, and which does business in Nevada directly or through an affiliated company. Our status at the time of the occurrence of a transaction governed by the Control Share Act (assuming that our articles of incorporation or bylaws have not theretofore been amended to include an opting out provision) would determine whether the Control Share Act is applicable.
The Control Share Act requires an Acquiring Person to take certain procedural steps before such Acquiring Person can obtain the full voting power of the control shares. “Control shares” are the shares of a corporation (1) acquired or offered to be acquired which will enable the Acquiring Person to own a “controlling interest,” and (2) acquired within 90 days immediately preceding that date. A “controlling interest” is defined as the ownership of shares which would enable the Acquiring Person to exercise certain graduated amounts (beginning with one-fifth) of all voting power of the corporation. The Acquiring Person may not vote any control shares without first obtaining approval from the stockholders not characterized as “interested stockholders” (as defined below).
To obtain voting rights in control shares, the Acquiring Person must file a statement at the registered office of the issuer (“Offeror’s Statement”) setting forth certain information about the acquisition or intended acquisition of stock. The Offeror’s Statement may also request a special meeting of stockholders to determine the voting rights to be accorded to the Acquiring Person. A special stockholders’ meeting must then be held at the Acquiring Person’s expense within 30 to 50 days after the Offeror’s Statement is filed. If a special meeting is not requested by the Acquiring Person, the matter will be addressed at the next regular or special meeting of stockholders.
At the special or annual meeting at which the issue of voting rights of control shares will be addressed, “interested stockholders” may not vote on the question of granting voting rights to control the corporation or its parent unless the articles of incorporation of the issuing corporation provide otherwise. Our articles of incorporation do not currently contain a provision allowing for such voting power.
If full voting power is granted to the Acquiring Person by the disinterested stockholders, and the Acquiring Person has acquired control shares with a majority or more of the voting power, then (unless otherwise provided in the articles of incorporation or bylaws in effect on the tenth day following the acquisition of a controlling interest) all stockholders of record, other than the Acquiring Person, who have not voted in favor of authorizing voting rights for the control shares, must be sent a “dissenter’s notice” advising them of the fact and of their right to receive “fair value” for their shares. Our articles of incorporation and bylaws do not provide otherwise. By the date set in the dissenter’s notice, which may not be less than 30 or more than 60 days after the dissenter’s notice is delivered, any such stockholder





may demand to receive from the corporation the “fair value” for all or part of his shares. “Fair value” is defined in the Control Share Act as “not less than the highest price per share paid by the Acquiring Person in an acquisition.”
The Control Share Act permits a corporation to redeem the control shares in the following two instances, if so provided in the articles of incorporation or bylaws of the corporation in effect on the tenth day following the acquisition of a controlling interest: (1) the Acquiring Person fails to deliver the Offeror’s Statement to the corporation within 10 days after the Acquiring Person’s acquisition of the control shares; or (2) an Offeror’s Statement is delivered, but the control shares are not accorded full voting rights by the stockholders. Our articles of incorporation and bylaws do not address this matter.
Listing
Our common stock is listed on the Nasdaq Stock market under the trading symbol “XPEL.”
Transfer Agents and Registrar
Our transfer agent for our Common Stock is Continental Stock Transfer and Trust Company.




EX-21.1 3 a201910-kexhibit211.htm EXHIBIT 21.1 Exhibit
Exhibit 21.1



List of Subsidiaries
Entity
 
Jurisdiction of Organization
 
Ownership
XPEL Inc.
 
Nevada, USA
 
Parent
XPEL Ltd.
 
U.K.
 
85%
ArmourfendCAD, LLC.
 
Nevada, USA
 
100%
XPEL Canada Corp.
 
Canada
 
100%
XPEL B.V.
 
Netherlands
 
100%
XPEL Germany GmbH
 
Germany
 
100%
XPEL de Mexico S. de R.L. de C.V.
 
Mexico
 
100%
XPEL Acquisition Corp.
 
Canada
 
100%
Protex Canada Inc.
 
Canada
 
100%
Apogee Corp.
 
Taiwan
 
100%



EX-31.1 4 a201910-kexhibit311.htm EXHIBIT 31.1 Exhibit


EXHIBIT 31.1
 
CERTIFICATION PURSUANT TO SECTION 302(A) OF THE SARBANES-OXLEY ACT OF 2002
 
I, Ryan L. Pape, certify that:
 
Date: March 16, 2020

1.
I have reviewed this Annual Report on Form 10-K of XPEL, Inc.;
2.
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;
3.
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;
4.
The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
a.
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;
b.
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;
c.
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
d.
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
5.
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):
a.
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
b.
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 16, 2020
/s/ Ryan L. Pape
Ryan L. Pape
President and Chief Executive Officer
(Principal Executive Officer)




EX-31.2 5 a201910-kexhibit312.htm EXHIBIT 31.2 Exhibit


EXHIBIT 31.2
 
CERTIFICATION PURSUANT TO SECTION 302(A) OF THE SARBANES-OXLEY ACT OF 2002

 
I, Barry R. Wood, certify that:
 

Date: March 16, 2020

1.
I have reviewed this Annual Report on Form 10-K of XPEL, Inc.;
2.
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;
3.
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;
4.
The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
a.
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;
b.
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;
c.
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
d.
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
5.
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):
a.
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
b.
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 16, 2020
/s/ Barry R. Wood 
Barry R. Wood
Senior Vice President
Chief Financial Officer
(Principal Financial Officer)




EX-32.1 6 a201910-kexhibit321.htm EXHIBIT 32.1 Exhibit


EXHIBIT 32.1
 
CERTIFICATION PURSUANT TO
18 U.S.C. 1350
(SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002)
 
I, Ryan L. Pape, President and Chief Executive Officer of XPEL, Inc. (the “Company”), certify, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section 1350, that, to my knowledge:
 
(1) the Annual Report on Form 10-K of the Company for the fiscal year ended December 31, 2019 (the “Report”) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m(a) or 78o(d)); and
 
(2) the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
 
This certificate is being furnished solely for the purposes of 18 U.S.C. Section 1350 and is not being filed as part of the Report or as a separate disclosure document.

Date: March 16, 2020
/s/ Ryan L. Pape
Ryan L. Pape
President and Chief Executive Officer




EX-32.2 7 a201910-kexhibit322.htm EXHIBIT 32.2 Exhibit


EXHIBIT 32.2
 
CERTIFICATION PURSUANT TO
18 U.S.C. 1350
(SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002)
 
I, Barry R.Wood, Senior Vice President and Chief Financial Officer of XPEL, Inc. (the “Company”), certify, pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, 18 U.S.C. Section 1350, that, to my knowledge:
 
(1) the Annual Report on Form 10-K of the Company for the fiscal year ended December 31, 2019 (the “Report”) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934 (15 U.S.C. 78m(a) or 78o(d)); and
 
(2) the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
 
This certificate is being furnished solely for the purposes of 18 U.S.C. Section 1350 and is not being filed as part of the Report or as a separate disclosure document.

Date: March 16, 2020
/s/ Barry R. Wood
Barry R. Wood
Senior Vice President and Chief Financial Officer



EX-101.SCH 8 xpel-20191231.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 2125100 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES link:presentationLink link:calculationLink link:definitionLink 2425402 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES - Schedule of Accounts Payable and Accrued Liability (Details) link:presentationLink link:calculationLink link:definitionLink 2325301 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES (Tables) link:presentationLink link:calculationLink link:definitionLink 2141100 - Disclosure - BUSINESS COMBINATIONS link:presentationLink link:calculationLink link:definitionLink 2441403 - Disclosure - BUSINESS COMBINATIONS - Acquisition Purchase Price (Details) link:presentationLink link:calculationLink link:definitionLink 2441402 - Disclosure - BUSINESS COMBINATIONS - Business Combinations Complete by Year-End (Details) link:presentationLink link:calculationLink link:definitionLink 2441404 - Disclosure - BUSINESS COMBINATIONS - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2441405 - Disclosure - BUSINESS COMBINATIONS - Pro Forma Results (Details) link:presentationLink link:calculationLink link:definitionLink 2341301 - Disclosure - BUSINESS COMBINATIONS (Tables) link:presentationLink link:calculationLink link:definitionLink 2128100 - Disclosure - CAPITAL STOCK link:presentationLink link:calculationLink link:definitionLink 2428401 - Disclosure - CAPITAL STOCK - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2139100 - Disclosure - COMMITMENTS AND CONTINGENCIES link:presentationLink link:calculationLink link:definitionLink 2439401 - Disclosure - COMMITMENTS AND CONTINGENCIES - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 1001000 - Statement - Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 1001001 - Statement - Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 1007000 - Statement - Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 1005000 - Statement - Consolidated Statements of Changes in Stockholders’ Equity link:presentationLink link:calculationLink link:definitionLink 1004000 - Statement - Consolidated Statements of Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 1003000 - Statement - Consolidated Statements of Income link:presentationLink link:calculationLink link:definitionLink 0001000 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 2119100 - Disclosure - DEBT link:presentationLink link:calculationLink link:definitionLink 2419402 - Disclosure - DEBT - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2419404 - Disclosure - DEBT - Schedule of Debt Maturities (Details) link:presentationLink link:calculationLink link:definitionLink 2419403 - Disclosure - DEBT - Schedule of Notes Payable (Details) link:presentationLink link:calculationLink link:definitionLink 2319301 - Disclosure - DEBT (Tables) link:presentationLink link:calculationLink link:definitionLink 2122100 - Disclosure - EMPLOYEE BENEFIT PLAN link:presentationLink link:calculationLink link:definitionLink 2422401 - Disclosure - EMPLOYEE BENEFIT PLAN - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2137100 - Disclosure - FAIR VALUE MEASUREMENTS link:presentationLink link:calculationLink link:definitionLink 2113100 - Disclosure - GOODWILL link:presentationLink link:calculationLink link:definitionLink 2413403 - Disclosure - GOODWILL - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2413402 - Disclosure - GOODWILL - Schedule of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2313301 - Disclosure - GOODWILL (Tables) link:presentationLink link:calculationLink link:definitionLink 2138100 - Disclosure - INCOME TAXES link:presentationLink link:calculationLink link:definitionLink 2438406 - Disclosure - INCOME TAXES - Components of Deferred Income Tax Assets (Liabilities) (Details) link:presentationLink link:calculationLink link:definitionLink 2438405 - Disclosure - INCOME TAXES - Components of the Income Tax Provision (Benefit) (Details) link:presentationLink link:calculationLink link:definitionLink 2438402 - Disclosure - INCOME TAXES - Income Before Income Tax (Details) link:presentationLink link:calculationLink link:definitionLink 2438404 - Disclosure - INCOME TAXES - Income Taxes Provision Difference (Details) link:presentationLink link:calculationLink link:definitionLink 2438403 - Disclosure - INCOME TAXES - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2338301 - Disclosure - INCOME TAXES (Tables) link:presentationLink link:calculationLink link:definitionLink 2104100 - Disclosure - INTANGIBLE ASSETS, NET link:presentationLink link:calculationLink link:definitionLink 2404403 - Disclosure - INTANGIBLE ASSETS, NET - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2404404 - Disclosure - INTANGIBLE ASSETS, NET - Schedule of Future Amortization Expense of Finite-Lived Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 2404402 - Disclosure - INTANGIBLE ASSETS, NET - Schedule of Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 2304301 - Disclosure - INTANGIBLE ASSETS, NET (Tables) link:presentationLink link:calculationLink link:definitionLink 2116100 - Disclosure - INVENTORIES link:presentationLink link:calculationLink link:definitionLink 2416402 - Disclosure - INVENTORIES - Schedule of Inventory (Details) link:presentationLink link:calculationLink link:definitionLink 2316301 - Disclosure - INVENTORIES (Tables) link:presentationLink link:calculationLink link:definitionLink 2140100 - Disclosure - LEASES link:presentationLink link:calculationLink link:definitionLink 2440403 - Disclosure - LEASES - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2440402 - Disclosure - LEASES - Schedule of Balance Sheet Information Related to Leases (Details) link:presentationLink link:calculationLink link:definitionLink 2440406 - Disclosure - LEASES - Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) link:presentationLink link:calculationLink link:definitionLink 2440405 - Disclosure - LEASES - Schedule of Maturities of Operating Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2440405 - Disclosure - LEASES - Schedule of Maturities of Operating Lease Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2440404 - Disclosure - LEASES - Schedule of Weighted Average Remaining Lease Term and Discount Rate Information (Details) link:presentationLink link:calculationLink link:definitionLink 2340301 - Disclosure - LEASES (Tables) link:presentationLink link:calculationLink link:definitionLink 2103100 - Disclosure - PROPERTY AND EQUIPMENT, NET link:presentationLink link:calculationLink link:definitionLink 2403403 - Disclosure - PROPERTY AND EQUIPMENT, NET - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2403402 - Disclosure - PROPERTY AND EQUIPMENT, NET - Schedule of Property, Plant and Equipment (Details) link:presentationLink link:calculationLink link:definitionLink 2303301 - Disclosure - PROPERTY AND EQUIPMENT, NET (Tables) link:presentationLink link:calculationLink link:definitionLink 2102100 - Disclosure - REVENUE link:presentationLink link:calculationLink link:definitionLink 2402403 - Disclosure - REVENUE - Disaggregation of Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 2402405 - Disclosure - REVENUE - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2402404 - Disclosure - REVENUE - Revenue Estimate By Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 2402402 - Disclosure - REVENUE - Schedule of Transactions Within Contract Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2302301 - Disclosure - REVENUE (Tables) link:presentationLink link:calculationLink link:definitionLink 2101100 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES link:presentationLink link:calculationLink link:definitionLink 2401405 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accounts Receivable (Details) link:presentationLink link:calculationLink link:definitionLink 2401412 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Advertising Costs (Details) link:presentationLink link:calculationLink link:definitionLink 2401408 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2401410 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Impairment of Long-Lived Assets (Details) link:presentationLink link:calculationLink link:definitionLink 2401409 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 2401406 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Inventory (Details) link:presentationLink link:calculationLink link:definitionLink 2401403 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Ownership Percentages and Functional Currencies (Details) link:presentationLink link:calculationLink link:definitionLink 2201201 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) link:presentationLink link:calculationLink link:definitionLink 2401407 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Property, Plant and Equipment (Details) link:presentationLink link:calculationLink link:definitionLink 2401413 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Provisions and Warranties (Details) link:presentationLink link:calculationLink link:definitionLink 2401414 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Recently Adopted Accounting Pronouncements (Details) link:presentationLink link:calculationLink link:definitionLink 2401411 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Research and Development (Details) link:presentationLink link:calculationLink link:definitionLink 2401404 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Segment Reporting (Details) link:presentationLink link:calculationLink link:definitionLink 2301302 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables) link:presentationLink link:calculationLink link:definitionLink 2134100 - Disclosure - STOCK OPTIONS link:presentationLink link:calculationLink link:definitionLink 2434401 - Disclosure - STOCK OPTIONS - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 2142100 - Disclosure - SUBSEQUENT EVENTS link:presentationLink link:calculationLink link:definitionLink 2442401 - Disclosure - SUBSEQUENT EVENTS - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 9 xpel-20191231_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 10 xpel-20191231_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 11 xpel-20191231_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Goodwill and Intangible Assets Disclosure [Abstract] Schedule of Goodwill Schedule of Goodwill [Table Text Block] Statement of Cash Flows [Abstract] Cash flows from operating activities Net Cash Provided by (Used in) Operating Activities [Abstract] Net income Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Adjustments to reconcile net income to net cash provided by operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Depreciation of property, plant and equipment Depreciation Amortization of intangible assets Amortization of Intangible Assets Impairment expense Asset Impairment Charges (Gain) loss on sale of property and equipment Gain (Loss) on Disposition of Property Plant Equipment Bad debt expense Accounts Receivable, Credit Loss Expense (Reversal) Deferred income tax Deferred Income Taxes and Tax Credits Accretion on notes payable Amortization of Debt Discount (Premium) Changes in current assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Accounts receivable Increase (Decrease) in Accounts Receivable Inventory, net Increase (Decrease) in Inventories Prepaid expenses and other current assets Increase (Decrease) in Prepaid Expense and Other Assets Income tax receivable Increase (Decrease) in Income Taxes Receivable Change in operating lease liabilities Increase (Decrease) In Operating Lease Liabilities Increase (Decrease) In Operating Lease Liabilities Accounts payable and accrued liabilities Increase (Decrease) in Accounts Payable and Accrued Liabilities Income tax payable Increase (Decrease) in Income Taxes Payable Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Cash flows used in investing activities Net Cash Provided by (Used in) Investing Activities [Abstract] Purchase of property, plant and equipment Payments to Acquire Property, Plant, and Equipment Proceeds from sale of property and equipment Proceeds from Sale of Property, Plant, and Equipment Acquisitions, net of cash acquired and notes payable Payments to Acquire Businesses, Net of Cash Acquired Development or purchase of intangible assets Payments to Acquire Intangible Assets Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Cash flows from financing activities Net Cash Provided by (Used in) Financing Activities [Abstract] Net repayments on revolving credit agreement Proceeds from (Repayments of) Lines of Credit Repayment of bank loan payable Repayments of Bank Debt Repayments of notes payable Repayments of Notes Payable Net cash used in financing activities Net Cash Provided by (Used in) Financing Activities Net change in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect Foreign exchange impact on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents Increase in cash and cash equivalents during the period Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Cash and cash equivalents at beginning of year Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents Cash and cash equivalents at end of year Supplemental schedule of non-cash activities Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract] Notes payable issued for acquisitions Notes Issued Forgiveness of debt for acquired entities Noncash or Part Noncash Acquisition, Debt Forgiven Noncash or Part Noncash Acquisition, Debt Forgiven Supplemental cash flow information Supplemental Cash Flow Information [Abstract] Cash paid for income taxes Income Taxes Paid, Net Cash paid for interest Interest Paid, Excluding Capitalized Interest, Operating Activities Share-based Payment Arrangement [Abstract] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Award Type [Axis] Award Type [Axis] Award Type [Domain] Award Type [Domain] Option Share-based Payment Arrangement, Option [Member] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Maximum number of allocated and made available to be issued shares as a percent Share-based Compensation Arrangement By Share-based Payment Award, Shares Allocated To Benefit Plan Based On Shares Outstanding And Issued, Threshold Percent Share-based Compensation Arrangement By Share-based Payment Award, Shares Allocated To Benefit Plan Based On Shares Outstanding And Issued, Threshold Percent Maximum term in number of years Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period Number of stock options issued (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Shares Issued in Period Leases [Abstract] Schedule of Balance Sheet Information Related To Leases Assets And Liabilities, Lessee [Table Text Block] Assets And Liabilities, Lessee [Table Text Block] Schedule of Weighted Average Remaining Lease Term and Discount Rate Information Lease, Cost [Table Text Block] Schedule of Maturities of Operating Lease Liabilities Lessee, Operating Lease, Liability, Maturity [Table Text Block] Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases Schedule of Future Minimum Rental Payments for Operating Leases [Table Text Block] Property, Plant and Equipment [Abstract] Schedules of Property, Plant and Equipment Property, Plant and Equipment [Table Text Block] Income Tax Disclosure [Abstract] INCOME TAXES Income Tax Disclosure [Text Block] Accounting Policies [Abstract] Inventory reserve Inventory Valuation Reserves Debt Disclosure [Abstract] 2020 Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months 2021 Long-term Debt, Maturities, Repayments of Principal in Year Two 2022 Long-term Debt, Maturities, Repayments of Principal in Year Three 2023 Long-term Debt, Maturities, Repayments of Principal in Year Four 2024 Long-term Debt, Maturities, Repayments of Principal in Year Five Thereafter Long-term Debt, Maturities, Repayments of Principal after Year Five Long-term Debt Long-term Debt Statement of Comprehensive Income [Abstract] Other comprehensive income Other Comprehensive Income (Loss), Net of Tax [Abstract] Net income Foreign currency translation Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Total comprehensive income including portion attributable to non-controlling interest Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest Total comprehensive income attributable to stockholders of the company Comprehensive Income (Loss), Net of Tax, Attributable to Parent Total comprehensive income attributable to non-controlling interest Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest Impairment of intangible assets, excluding goodwill Impairment of Intangible Assets, Finite-lived Statement of Financial Position [Abstract] Preferred stock, par value (in dollars per share) Preferred Stock, Par or Stated Value Per Share Preferred stock shares authorized (in shares) Preferred Stock, Shares Authorized Preferred stock shares issued (in shares) Preferred Stock, Shares Issued Preferred stock shares outstanding (in shares) Preferred Stock, Shares Outstanding Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share Common stock shares authorized (in shares) Common Stock, Shares Authorized Common stock shares issued (in shares) Common Stock, Shares, Issued Common stock shares outstanding (in shares) Common Stock, Shares, Outstanding Operating lease expense Operating Lease, Expense Variable lease payment Variable Lease, Cost Short-term lease expense Short-term Lease, Cost Operating lease payment Operating Lease, Payments Operating lease rent expense Operating Leases, Rent Expense Revenue from Contract with Customer [Abstract] REVENUE Revenue from Contract with Customer [Text Block] PROPERTY AND EQUIPMENT, NET Property, Plant and Equipment Disclosure [Text Block] Business Combinations And Asset Acquisitions [Abstract] Business Combinations And Asset Acquisitions [Abstract] Schedule of Business Acquisitions, by Acquisition [Table] Schedule of Business Acquisitions, by Acquisition [Table] Asset Acquisition [Axis] Asset Acquisition [Axis] Asset Acquisition [Axis] Asset Acquisition [Domain] Asset Acquisition [Domain] [Domain] for Asset Acquisition [Axis] Paintshield, Ltd Paintshield, Ltd [Member] Paintshield, Ltd [Member] Business and Asset Acquisition [Axis] Business And Asset Acquisition [Axis] Business And Asset Acquisition [Axis] Business And Asset Acquisition [Domain] Business And Asset Acquisition [Domain] [Domain] for Business And Asset Acquisition [Axis] 2018 Acquisitions Series of individually Immaterial Business And Asset Acquisitions [Member] Series of individually Immaterial Business And Asset Acquisitions [Member] Business Acquisition [Line Items] Business Acquisition [Line Items] Paintshield, Ltd. Asset Acquisition [Abstract] Asset Acquisition [Abstract] Payments for asset acquisition Payments For Asset Acquisition Payments For Asset Acquisition Promissory note Asset Acquisition, Notes Payable Asset Acquisition, Notes Payable Forgiveness of debt Asset Acquisition, Debt Cancellation Asset Acquisition, Debt Cancellation Asset acquisition price Asset Acquisition, Consideration Transferred Asset Acquisition, Consideration Transferred Cash Asset Acquisition, Cash and Equivalents Asset Acquisition, Cash and Equivalents Accounts receivable Asset Acquisition, Current Assets, Receivables Asset Acquisition, Current Assets, Receivables Inventory Asset Acquisition, Inventory Asset Acquisition, Inventory Prepaid expenses and other assets Asset Acquisition, Current Assets, Prepaid Expense And Other Assets Asset Acquisition, Current Assets, Prepaid Expense And Other Assets Property and equipment Asset Acquisition, Property, Plant, And Equipment Asset Acquisition, Property, Plant, And Equipment Trade name Asset Acquisition, Trade Name Asset Acquisition, Trade Name Acquired patterns Asset Acquisition, Acquired Patterns Asset Acquisition, Acquired Patterns Customer relationships Asset Acquisition, Customer Relationships Asset Acquisition, Customer Relationships Goodwill Goodwill Accounts payable Asset Acquisition, Current Liabilities, Accounts Payable Asset Acquisition, Current Liabilities, Accounts Payable Other accrued liabilities Asset Acquisition, Accrued Liabilities, Other Asset Acquisition, Accrued Liabilities, Other Total net assets acquired Asset Acquisition, Assets Acquired and Liabilities Assumed, Net Asset Acquisition, Assets Acquired and Liabilities Assumed, Net 2018 Acquisitions Business Combination and Asset Acquisition [Abstract] Business Combination and Asset Acquisition [Abstract] Payments for business combination and asset acquisition Payments For Business Combination And Asset Acquisition Payments For Business Combination And Asset Acquisition Promissory note Business Combination And Asset Acquisition, Notes Payable Business Combination And Asset Acquisition, Notes Payable Forgiveness of debt Business Combination And Asset Acquisition, Debt Cancellation Business Combination And Asset Acquisition, Debt Cancellation Business combination and asset acquisition price Business Combination And Asset Acquisition, Consideration Transferred Business Combination And Asset Acquisition, Consideration Transferred Cash Business Combination And Asset Acquisition, Cash And Cash Equivalents Business Combination And Asset Acquisition, Cash And Cash Equivalents Accounts receivable Business Combination And Asset Acquisition, Current Assets, Receivables Business Combination And Asset Acquisition, Current Assets, Receivables Inventory Business Combination And Asset Acquisition, Inventory Business Combination And Asset Acquisition, Inventory Prepaid expenses and other assets Business Combination And Asset Acquisition, Current Assets, Prepaid Expense and Other Assets Business Combination And Asset Acquisition, Current Assets, Prepaid Expense and Other Assets Property and equipment Business Combination And Asset Acquisition, Property, Plant, And Equipment Business Combination And Asset Acquisition, Property, Plant, And Equipment Trade name Business Combination And Asset Acquisition, Trade Name Business Combination And Asset Acquisition, Trade Name Acquired patterns Business Combination And Asset Acquisition, Acquired Patterns Business Combination And Asset Acquisition, Acquired Patterns Customer relationships Business Combination And Asset Acquisition, Customer Relationships Business Combination And Asset Acquisition, Customer Relationships Goodwill Accounts payable Business Combination And Asset Acquisition, Current Liabilities, Account Payable Business Combination And Asset Acquisition, Current Liabilities, Account Payable Other accrued liabilities Business Combination And Asset Acquisition, Accrued Liabilities, Other Business Combination And Asset Acquisition, Accrued Liabilities, Other Total net business combination and assets acquired Business Combination And Asset Acquisition, Assets Acquired and Liabilities Assumed, Net Business Combination And Asset Acquisition, Assets Acquired and Liabilities Assumed, Net Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Statistical Measurement [Axis] Statistical Measurement [Axis] Statistical Measurement [Domain] Statistical Measurement [Domain] Minimum Minimum [Member] Maximum Maximum [Member] Property, Plant and Equipment, Type [Axis] Property, Plant and Equipment, Type [Axis] Property, Plant and Equipment, Type [Domain] Property, Plant and Equipment, Type [Domain] Furniture and fixtures Furniture and Fixtures [Member] Computer equipment Computer Equipment [Member] Vehicles Vehicles [Member] Equipment Equipment [Member] Plotters Computer Equipment, Plotter [Member] Computer Equipment, Plotter [Member] Geographical [Axis] Geographical [Axis] Geographical [Domain] Geographical [Domain] United States UNITED STATES Canada CANADA Europe Europe [Member] Other Other Geographic Region [Member] Other Geographic Region [Member] Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Property, plant and equipment useful life Property, Plant and Equipment, Useful Life Property and equipment, net Property, Plant and Equipment, Net DEFERRED TAX ASSETS: Components of Deferred Tax Assets [Abstract] Allowance for Doubtful Accounts Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Allowance for Doubtful Accounts 263(A) Adjustment Deferred Tax Assets, Tax Deferred Expense, 263 (A) Adjustment Deferred Tax Assets, Tax Deferred Expense, 263 (A) Adjustment Accrued Expenses Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities Inventory Reserve Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Reserves Accretion of Acquisition Notes Deferred Tax Assets, Acquisition Notes Accretion Deferred Tax Assets, Acquisition Notes Accretion Unrealized loss Deferred Tax Assets, Unrealized Currency Losses State Tax Credit Deferred Tax Assets, Tax Credit Carryforwards NOL Carryforward and Other Deferred Tax Assets, Operating Loss Carryforwards Total deferred tax assets Deferred Tax Assets, Gross DEFERRED TAX LIABILITIES: Components of Deferred Tax Liabilities [Abstract] Fixed and Intangible Assets Deferred Tax Liabilities, Property, Plant and Equipment and Intangible Assets Deferred Tax Liabilities, Property, Plant and Equipment and Intangible Assets Unrealized Gain Deferred Tax Liabilities, Unrealized Currency Transaction Gains Accretion Deferred Tax Liabilities, Accretion Deferred Tax Liabilities, Accretion Total deferred tax liabilities Deferred Tax Liabilities, Gross Total net deferred tax liabilities Deferred Tax Liabilities, Net DEBT Debt Disclosure [Text Block] GOODWILL Goodwill Disclosure [Text Block] Equity [Abstract] Common stock value issued Common Stock, Value, Issued Common stock value outstanding Common Stock, Value, Outstanding CAPITAL STOCK Stockholders' Equity Note Disclosure [Text Block] Inventory Disclosure [Abstract] Film and film based products Other Inventory, Film And Film Based Products, Gross Other Inventory, Film And Film Based Products, Gross Other products Other Inventory, Gross Packaging and supplies Other Inventory, Supplies, Gross Inventory, net Inventory, Net Noncontrolling Interest [Table] Noncontrolling Interest [Table] Ownership [Axis] Ownership [Axis] Ownership [Domain] Ownership [Domain] XPEL, Ltd. XPEL, Ltd. [Member] XPEL, Ltd. [Member] Armourfend CAD, LLC Armourfend CAD, LLC [Member] Armourfend CAD, LLC [Member] XPEL Canada Corp. XPEL Canada Corp. [Member] XPEL Canada Corp. [Member] XPEL B.V. XPEL B.V [Member] XPEL B.V [Member] XPEL Germany GmbH XPEL Germany GmbH [Member] XPEL Germany GmbH [Member] XPEL de Mexico S. de R.L. de C.V. XPEL De Mexico S. De R.L. De C.V. [Member] XPEL De Mexico S. De R.L. De C.V. [Member] XPEL Acquisition Corp. XPEL Acquisition Corp. [Member] XPEL Acquisition Corp. [Member] Protex Canada, Inc. Protex Canada, Inc. [Member] Protex Canada, Inc. [Member] Apogee Corp. Apogee Corp. [Member] Apogee Corp. [Member] Noncontrolling Interest [Line Items] Noncontrolling Interest [Line Items] Ownership percentage Noncontrolling Interest, Ownership Percentage by Parent eShields, LLC eShields, LLC [Member] eShields, LLC [Member] Business Acquisition [Axis] Business Acquisition [Axis] Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Quebec, Inc Quebec, Inc, Quebec City [Member] Quebec, Inc, Quebec City [Member] Quebec, Inc., Pointe Claire Quebec, Inc., Pointe Claire [Member] Quebec, Inc., Pointe Claire [Member] Canada, Inc., Calgary Canada, Inc., Calgary [Member] Canada, Inc., Calgary [Member] Purchase price Business Combination, Consideration Transferred Asset acquisition price Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Trademarks Trademarks [Member] Software Software Development [Member] Trade name Trade Names [Member] Contractual and customer relationships Customer Relationships [Member] Non-compete Noncompete Agreements [Member] Other Other Intangible Assets [Member] Finite-Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Intangible assets, gross Finite-Lived Intangible Assets, Gross Accumulated amortization Finite-Lived Intangible Assets, Accumulated Amortization Intangible assets, net Finite-Lived Intangible Assets, Net Movement in Standard Product Warranty Accrual [Roll Forward] Movement in Standard Product Warranty Accrual [Roll Forward] Beginning balance warranty liability Standard Product Warranty Accrual Warranties assumed in period Standard and Extended Product Warranty Accrual, Increase for Warranties Issued Payments Standard and Extended Product Warranty Accrual, Decrease for Payments Ending balance warranty liability 2019 Operating Leases, Future Minimum Payments Due, Next Twelve Months 2020 Operating Leases, Future Minimum Payments, Due in Two Years 2021 Operating Leases, Future Minimum Payments, Due in Three Years 2022 Operating Leases, Future Minimum Payments, Due in Four Years 2023 Operating Leases, Future Minimum Payments, Due in Five Years Thereafter Operating Leases, Future Minimum Payments, Due Thereafter Total operating leases future minimum payments due Operating Leases, Future Minimum Payments Due Commitments and Contingencies Disclosure [Abstract] COMMITMENTS AND CONTINGENCIES Commitments and Contingencies Disclosure [Text Block] Assets Assets [Abstract] Current Assets, Current [Abstract] Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Accounts receivable, net Accounts Receivable, after Allowance for Credit Loss, Current Inventory, net Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Income tax receivable Income Taxes Receivable, Current Total current assets Assets, Current Right-of-Use lease assets Operating Lease, Right-of-Use Asset Intangible assets, net Total assets Assets Liabilities Liabilities [Abstract] Current Liabilities, Current [Abstract] Current portion of notes payable Notes Payable, Current Current portion lease liabilities Operating Lease, Liability, Current Accounts payable and accrued liabilities Accounts Payable and Accrued Liabilities, Current Income tax payable Accrued Income Taxes, Current Total current liabilities Liabilities, Current Deferred tax liability, net Deferred Income Tax Liabilities, Net Non-current portion of lease liabilities Operating Lease, Liability, Noncurrent Non-current portion of notes payable Notes Payable, Noncurrent Total liabilities Liabilities Stockholders’ equity Stockholders' Equity Attributable to Parent [Abstract] Preferred stock, $0.001 par value; authorized 10,000,000; none issued and outstanding Preferred Stock, Value, Issued Common stock, $0.001 par value; 100,000,000 shares authorized; 27,612,597 issued and outstanding Additional paid-in-capital Additional Paid in Capital Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Retained earnings Retained Earnings (Accumulated Deficit) Equity attributable to stockholders of the company Stockholders' Equity Attributable to Parent Non-controlling interest Stockholders' Equity Attributable to Noncontrolling Interest Total stockholders’ equity Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest Total liabilities and stockholders’ equity Liabilities and Equity Schedule of Income before Income Tax Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block] Schedule of Effective Income Tax Rate Reconciliation Schedule of Effective Income Tax Rate Reconciliation [Table Text Block] Schedule of Components of Income Tax Expense (Benefit) Schedule of Components of Income Tax Expense (Benefit) [Table Text Block] Schedule of Deferred Tax Assets (Liabilities) Schedule of Deferred Tax Assets and Liabilities [Table Text Block] Schedule of Inventory Schedule of Inventory, Current [Table Text Block] Accounts Payable and Accrued Liabilities [Abstract] Trade payables Accounts Payable, Trade, Current Payroll liabilities Employee-related Liabilities, Current Contract liabilities Contract with Customer, Liability, Current Other liabilities Accounts Payable and Other Accrued Liabilities, Current Accounts payable and accrued liabilities ACCOUNTS PAYABLE AND ACCRUED LIABILITIES Accounts Payable and Accrued Liabilities Disclosure [Text Block] Schedule of Accounts Payable and Accrued Liabilities Schedule of Accounts Payable and Accrued Liabilities [Table Text Block] Schedules of Intangible Assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Schedule of Future Amortization Expense of Finite-Lived Intangible Assets Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Schedule of Long-term Debt Instruments [Table] Schedule of Long-term Debt Instruments [Table] Debt Instrument [Axis] Debt Instrument [Axis] Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Acquisition Notes Payable Due 2022 Acquisition Notes Payable Due 2022 [Member] Acquisition Notes Payable Due 2022 [Member] Debt Instrument [Line Items] Debt Instrument [Line Items] Weighted average interest rate (as a percent) Debt, Weighted Average Interest Rate Total debt Notes Payable Current portion Total long-term debt Operating lease right-of-use assets Total operating lease liabilities Operating Lease, Liability Income before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Statutory rate Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent Income statutory rate amount Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount State taxes net of federal benefit Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount Nondeductible/nontaxable items Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount Foreign tax rate differential Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount Foreign derived intangible income benefit Effective Income Tax Rate Reconciliation, Foreign Derived Intangible Income Benefit Amount Effective Income Tax Rate Reconciliation, Foreign Derived Intangible Income Benefit Amount Return to provision estimated revision Effective Income Tax Rate Reconciliation, Return To Provision Adjustment, Amount Effective Income Tax Rate Reconciliation, Return To Provision Adjustment, Amount Other - net Effective Income Tax Rate Reconciliation, Other Adjustments, Amount Income tax expense Income Tax Expense (Benefit) Research and development expense Research and Development Expense Business Combination Completed by Year-end Schedule Of Business And Asset Acquisitions, By Acquisition [Table Text Block] Schedule Of Business And Asset Acquisitions, By Acquisition [Table Text Block] Acquisition Purchase Price Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed, Asset And Business Combinations [Table Text Block] Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed, Asset And Business Combinations [Table Text Block] Pro Forma Results Business And Asset Acquisitions, Pro Forma Information [Table Text Block] Business And Asset Acquisitions, Pro Forma Information [Table Text Block] Number of operating segments Number of Operating Segments Subsequent Events [Abstract] Subsequent Event [Table] Subsequent Event [Table] Subsequent Event Type [Axis] Subsequent Event Type [Axis] Subsequent Event Type [Domain] Subsequent Event Type [Domain] Subsequent Event Subsequent Event [Member] Subsequent Event [Line Items] Subsequent Event [Line Items] Percentage of business acquired Business Acquisition, Percentage of Voting Interests Acquired Cash Payments to Acquire Businesses, Gross Purchase commitment renewal period Long-term Purchase Commitment, Period Renewal Long-term Purchase Commitment, Period Renewal Purchase commitment renewal option notice Long-term Purchase Commitment, Renewal Option Notice Long-term Purchase Commitment, Renewal Option Notice Quarterly purchase commitment Long-term Purchase Commitment, Amount, Quarterly Long-term Purchase Commitment, Amount, Quarterly Annual purchase commitment Long-term Purchase Commitment, Amount, Annually Long-term Purchase Commitment, Amount, Annually Current Income Tax Expense Current Income Tax Expense (Benefit), Continuing Operations [Abstract] Federal Current Federal Tax Expense (Benefit) Foreign Current Foreign Tax Expense (Benefit) State Current State and Local Tax Expense (Benefit) Total Current Income Tax Expense Current Income Tax Expense (Benefit) Deferred Income Tax Expense/(Benefit) Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract] Federal Deferred Federal Income Tax Expense (Benefit) Foreign Deferred Foreign Income Tax Expense (Benefit) Total Deferred Income Tax Expense/(Benefit) Deferred Income Tax Expense (Benefit) Schedule of Transactions Within Contract Liabilities Contract with Customer, Asset and Liability [Table Text Block] Disaggregation of Revenue Disaggregation of Revenue [Table Text Block] Revenue Estimate by Geographic Areas Revenue from External Customers by Geographic Areas [Table Text Block] Schedule of Notes Payable Schedule of Debt [Table Text Block] Schedule of Maturities of Long-term Debt Schedule of Maturities of Long-term Debt [Table Text Block] Number of locations closed Number Of Locations Closed Number Of Locations Closed SIGNIFICANT ACCOUNTING POLICIES Significant Accounting Policies [Text Block] Advertising costs Advertising Expense Cover page. Document Type Document Type Document Annual Report Document Annual Report Document Period End Date Document Period End Date Document Transition Report Document Transition Report Entity File Number Entity File Number Entity Registrant Name Entity Registrant Name Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Entity Tax Identification Number Entity Tax Identification Number Entity Address, Address Line One Entity Address, Address Line One Entity Address, City or Town Entity Address, City or Town Entity Address, State or Province Entity Address, State or Province Entity Address, Postal Zip Code Entity Address, Postal Zip Code City Area Code City Area Code Local Phone Number Local Phone Number Title of 12(b) Security Title of 12(b) Security Trading Symbol Trading Symbol Security Exchange Name Security Exchange Name Entity Well-known Seasoned Issuer Entity Well-known Seasoned Issuer Entity Voluntary Filers Entity Voluntary Filers Entity Current Reporting Status Entity Current Reporting Status Entity Interactive Data Current Entity Interactive Data Current Entity Filer Category Entity Filer Category Entity Small Business Entity Small Business Entity Emerging Growth Company Entity Emerging Growth Company Entity Ex Transition Period Entity Ex Transition Period Entity Shell Company Entity Shell Company Entity Public Float Entity Public Float Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Documents Incorporated by Reference Documents Incorporated by Reference [Text Block] Amendment Flag Amendment Flag Current Fiscal Year End Date Current Fiscal Year End Date Document Fiscal Year Focus Document Fiscal Year Focus Document Fiscal Period Focus Document Fiscal Period Focus Entity Central Index Key Entity Central Index Key Schedule of Goodwill [Table] Schedule of Goodwill [Table] Goodwill [Line Items] Goodwill [Line Items] Intangible asset useful life Finite-Lived Intangible Asset, Useful Life INVENTORIES Inventory Disclosure [Text Block] STOCK OPTIONS Share-based Payment Arrangement [Text Block] Leasehold improvements Leasehold Improvements [Member] Construction in Progress Construction in Progress [Member] Property, plant and equipment Property, Plant and Equipment, Gross Accumulated depreciation Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Property and equipment, net INTANGIBLE ASSETS, NET Intangible Assets Disclosure [Text Block] Depreciation expense BUSINESS COMBINATIONS Business Combinations And Asset Acquisitions Disclosure [Text Block] Business Combinations And Asset Acquisitions Disclosure [Text Block] Change in Contract with Customer, Liability [Abstract] Change in Contract with Customer, Liability [Abstract] Beginning contract liabilities Revenue recognized related to payments in beginning balance Contract with Customer, Liability, Revenue Recognized Payments received for which performance obligations have not been satisfied Contract With Customer, Liability, Increase From Cash Receipts Contract With Customer, Liability, Increase From Cash Receipts Effect of Foreign Currency Translation Contract with Customer, Liability, Foreign Currency Translation Contract with Customer, Liability, Foreign Currency Translation Ending contract liabilities 2020 Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months 2021 Lessee, Operating Lease, Liability, Payments, Due Year Two 2022 Lessee, Operating Lease, Liability, Payments, Due Year Three 2023 Lessee, Operating Lease, Liability, Payments, Due Year Four 2024 Lessee, Operating Lease, Liability, Payments, Due Year Five Thereafter Lessee, Operating Lease, Liability, Payments, Due after Year Five Total operating lease payments Lessee, Operating Lease, Liability, Payments, Due Less: interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount 2018 Acquisitions 2018 Acquisitions [Member] 2018 Acquisitions [Member] Intangible assets weighted average useful life Acquired Finite-lived Intangible Assets, Weighted Average Useful Life Revenue of 2018 acquisitions Business And Asset Acquisitions, Pro Forma Information, Revenue Of Acquiree Since Acquisition Date, Actual Business And Asset Acquisitions, Pro Forma Information, Revenue Of Acquiree Since Acquisition Date, Actual Operating income of 2018 acquisitions Business And Asset Acquisitions, Pro Forma Information, Earnings Or Loss Of Acquiree Since Acquisition Date, Actual Business And Asset Acquisitions, Pro Forma Information, Earnings Or Loss Of Acquiree Since Acquisition Date, Actual Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Product and Service [Axis] Product and Service [Axis] Product and Service [Domain] Product and Service [Domain] Product revenue Product [Member] Paint protection film Product Revenue, Paint Protection Film [Member] Product Revenue, Paint Protection Film [Member] Window film Product Revenue, Window Film [Member] Product Revenue, Window Film [Member] Other Product Revenue, Other [Member] Product Revenue, Other [Member] Service revenue Service [Member] Software Service Revenue, Software [Member] Service Revenue, Software [Member] Cutbank credits Service Revenue, Cutbank Credits [Member] Service Revenue, Cutbank Credits [Member] Installation labor Service Revenue, Installation Labor [Member] Service Revenue, Installation Labor [Member] Training Service Revenue, Training [Member] Service Revenue, Training [Member] Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Total revenue Revenue from Contract with Customer, Excluding Assessed Tax Retirement Benefits [Abstract] Contribution expense Defined Contribution Plan, Cost EMPLOYEE BENEFIT PLAN Pension and Other Postretirement Benefits Disclosure [Text Block] Schedule of Ownership Interests and Functional Currencies Schedule Of Ownership Interests And Functional Currencies [Table Text Block] Schedule Of Ownership Interests And Functional Currencies [Table Text Block] Schedule of Product Warranty Liability Schedule of Product Warranty Liability [Table Text Block] Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Segment Reporting Segment Reporting, Policy [Policy Text Block] Use of Estimates Use of Estimates, Policy [Policy Text Block] Foreign Currency Translation Foreign Currency Transactions and Translations Policy [Policy Text Block] Cash and Cash Equivalents Cash and Cash Equivalents, Policy [Policy Text Block] Accounts Receivable Accounts Receivable [Policy Text Block] Inventory Inventory, Policy [Policy Text Block] Property, Plant and Equipment Property, Plant and Equipment, Policy [Policy Text Block] Goodwill Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block] Intangible Assets Goodwill and Intangible Assets, Intangible Assets, Policy [Policy Text Block] Impairment of Long-Lived Assets Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block] Revenue Recognition Revenue from Contract with Customer [Policy Text Block] Research and Development Research, Development, and Computer Software, Policy [Policy Text Block] Advertising Costs Advertising Cost [Policy Text Block] Provisions and Warranties Standard Product Warranty, Policy [Policy Text Block] Income Taxes Income Tax, Policy [Policy Text Block] Accumulated Other Comprehensive Income (Loss) (AOCI) Comprehensive Income, Policy [Policy Text Block] Earnings Per Share Earnings Per Share, Policy [Policy Text Block] Business Combinations Business Combinations Policy [Policy Text Block] Fair Value Measurements Fair Value Measurement, Policy [Policy Text Block] Recently Adopted Accounting Pronouncements and Recent Accounting Pronouncements Issued and Not Yet Adopted New Accounting Pronouncements, Policy [Policy Text Block] Revenue Business And Asset Acquisitions, Pro Forma Revenue Business And Asset Acquisitions, Pro Forma Revenue Net income Business And Asset Acquisitions, Pro Forma Net Income (Loss) Business And Asset Acquisitions, Pro Forma Net Income (Loss) Statement of Stockholders' Equity [Abstract] Statement [Table] Statement [Table] Equity Components [Axis] Equity Components [Axis] Equity Component [Domain] Equity Component [Domain] Common Stock Common Stock [Member] Additional Paid-in-Capital Additional Paid-in Capital [Member] Retained Earnings Retained Earnings [Member] Accumulated Other Comprehensive Loss AOCI Attributable to Parent [Member] Equity attributable to Stockholders of the Company Parent [Member] Non-Controlling Interest Noncontrolling Interest [Member] Statement [Line Items] Statement [Line Items] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Beginning stock outstanding balance (in shares) Shares, Outstanding Beginning balance Ending stock outstanding balance (in shares) Ending balance China CHINA Continental Europe United Kingdom UNITED KINGDOM Asia Pacific Asia Pacific [Member] Latin America Latin America [Member] Middle East/Africa Middle East, Africa [Member] Middle East, Africa [Member] Line of Credit Facility [Table] Line of Credit Facility [Table] Variable Rate [Axis] Variable Rate [Axis] Variable Rate [Domain] Variable Rate [Domain] Prime Rate Prime Rate [Member] Long-term Debt, Type [Axis] Long-term Debt, Type [Axis] Long-term Debt, Type [Domain] Long-term Debt, Type [Domain] Line of Credit Line of Credit [Member] Lender Name [Axis] Lender Name [Axis] Line of Credit Facility, Lender [Domain] Line of Credit Facility, Lender [Domain] The Bank of San Antonio The Bank Of San Antonio [Member] The Bank Of San Antonio [Member] HSBC Bank Canada HSBC Bank Canada [Member] HSBC Bank Canada [Member] Credit Facility [Axis] Credit Facility [Axis] Credit Facility [Domain] Credit Facility [Domain] Revolving Credit Facility Revolving Credit Facility [Member] Line of Credit Facility [Line Items] Line of Credit Facility [Line Items] Maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Basis spread on prime rate Debt Instrument, Basis Spread on Variable Rate Debt instrument floor rate Debt Instrument, Floor Rate Debt Instrument, Floor Rate Line of credit facility interest rate Line of Credit Facility, Interest Rate at Period End Amount outstanding Long-term Line of Credit Covenant, debt service coverage ratio required, minimum Debt Instrument, Covenant, Debt Service Coverage Ratio Required, Minimum Debt Instrument, Covenant, Debt Service Coverage Ratio Required, Minimum Covenant, debt to intangible net worth ratio required, minimum Debt Instrument, Covenant, Debt To Intangible Net Worth Ratio Required, Minimum Debt Instrument, Covenant, Debt To Intangible Net Worth Ratio Required, Minimum Deferred tax balance remeasurement Tax Cuts and Jobs Act, Change in Tax Rate, Income Tax Expense (Benefit) Operating loss carryforwards Operating Loss Carryforwards Income tax benefit related to foreign derived intangible income Tax Cuts and Jobs Act, Income Tax Expense (Benefit) Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Accounts Receivable Accounts Receivable [Member] Concentration Risk Type [Axis] Concentration Risk Type [Axis] Concentration Risk Type [Domain] Concentration Risk Type [Domain] Customer Concentration Risk Customer Concentration Risk [Member] Customer [Axis] Customer [Axis] Customer [Domain] Customer [Domain] Largest Customer Largest Customer [Member] Largest Customer [Member] Accounts receivable, net of allowance for doubtful accounts Accounts Receivable, Allowance for Credit Loss, Current Concentration risk percentage Concentration Risk, Percentage Fair Value Disclosures [Abstract] FAIR VALUE MEASUREMENTS Fair Value Disclosures [Text Block] Weighted-average remaining lease term (in years) Operating Lease, Weighted Average Remaining Lease Term Weighted-average discount rate Operating Lease, Weighted Average Discount Rate, Percent Goodwill [Roll Forward] Goodwill [Roll Forward] Goodwill beginning balance Additions Goodwill, Acquired During Period Foreign currency translation Goodwill, Foreign Currency Translation Gain (Loss) Impairment Goodwill, Impairment Loss Goodwill ending balance The China Distributor The China Distributor [Member] The China Distributor [Member] Revenue from Contract with Customer Benchmark Revenue from Contract with Customer Benchmark [Member] Current portion of operating lease liabilities Noncurrent portion of operating lease liabilities Total operating lease liabilities Subsequent Events Subsequent Events [Text Block] Domestic Income (Loss) from Continuing Operations before Income Taxes, Domestic International Income (Loss) from Continuing Operations before Income Taxes, Foreign Income before income taxes LEASES Lessee, Operating Leases [Text Block] Goodwill impairment loss 2020 Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months 2021 Finite-Lived Intangible Assets, Amortization Expense, Year Two 2022 Finite-Lived Intangible Assets, Amortization Expense, Year Three 2023 Finite-Lived Intangible Assets, Amortization Expense, Year Four 2024 Finite-Lived Intangible Assets, Amortization Expense, Year Five Thereafter Finite-Lived Intangible Assets, Amortization Expense, after Year Five Income Statement [Abstract] Revenue Cost of Sales Cost of Goods and Services Sold [Abstract] Total cost of sales Cost of Goods and Services Sold Gross Margin Gross Profit Operating Expenses Operating Expenses [Abstract] Sales and marketing Selling and Marketing Expense General and administrative General and Administrative Expense Total operating expenses Operating Expenses Operating Income Operating Income (Loss) Interest expense Interest Expense Foreign currency exchange loss Foreign Currency Transaction Gain (Loss), before Tax Income tax expense Net income Income attributed to non-controlling interest Net Income (Loss) Attributable to Noncontrolling Interest Net income attributable to stockholders of the Company Net Income (Loss) Attributable to Parent Earnings per share attributable stockholders of the Company Earnings Per Share, Basic and Diluted [Abstract] Earnings per share basic and diluted (in dollars per share) Earnings Per Share, Basic and Diluted Weighted Average Number of Common Shares Earnings Per Share, Basic and Diluted, Other Disclosures [Abstract] Weighted-average common shares outstanding, basic and diluted (in shares) Weighted Average Number of Shares Outstanding, Basic and Diluted EX-101.PRE 12 xpel-20191231_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 13 R22.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES
12 Months Ended
Dec. 31, 2019
Leases [Abstract]  
LEASES LEASES
We lease space under non-cancelable operating leases for office space, warehouse facilities, and installation locations. These leases do not have significant rent holidays, rent escalation provisions, leasehold improvement incentives, or other build-out clauses. Neither do these leases contain contingent rent provisions. We also lease vehicles and equipment to support our global operations. We have elected the practical expedient to combine lease and non-lease components. We have also elected to adopt the package of practical expedients that allow us not to reassess whether expired leases are or contain leases, not to reassess the lease classification of existing leases, and not to reassess initial direct costs for existing leases.
Some of our leases contain options to renew. The exercise of lease renewals is at our sole discretion; therefore, the renewals to extend the lease terms are not included in our ROU assets as it is not reasonably certain that they will be exercised. We regularly evaluate the renewal options and, when they are reasonably certain of exercise, we include the renewal period in our lease term.
As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at the lease commencement date in determining the present value of the lease payments. We have a centrally managed treasury function; therefore, based on the applicable lease terms and the current economic environment, we apply a portfolio approach for determining the incremental borrowing rate.
Balance sheet information related to operating leases is as follows:
 
December 31, 2019
Operating lease right-of-use assets
$
5,079,110

 
 
Current portion of operating lease liabilities
1,126,701

Noncurrent portion of operating lease liabilities
4,009,949

Total operating lease liabilities
$
5,136,650


We had operating lease expense of $1,210,969 for the year ended December 31, 2019. Variable lease payments and short-term lease expenses for the same period were $492,771 and $157,253, respectively, and we made cash payments of $1,235,264, on leases subject to the accounting treatment described above in Note 1.
Weighted-average information associated with the measurement of our remaining operating lease obligations is as follows:
 
December 31, 2019
Weighted-average remaining lease term (in years)
5.6

Weighted-average discount rate
5.84
%

The following table summarizes the maturity of our operating lease liabilities as of December 31, 2019:
2020
$
1,060,213

2021
1,084,622

2022
1,011,538

2023
908,901

2024
580,481

Thereafter
1,077,086

     Total operating lease payments
5,722,841

Less: interest
(586,191
)
Total operating lease liabilities
$
5,136,650


For the year ended December 31, 2018, rent expense related to operating leases was approximately $1,209,208. Future minimum lease payments, under non-cancelable operating leases as of December 31, 2018 were as follows:
2019
$
869,492

2020
736,169

2021
667,551

2022
601,593

2023
528,427

Thereafter
1,372,388

 
$
4,775,620


XML 14 R26.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES (Tables)
12 Months Ended
Dec. 31, 2019
Accounting Policies [Abstract]  
Schedule of Ownership Interests and Functional Currencies The ownership percentages and functional currencies of the entities included in these consolidated financial statements are as follows:
Subsidiaries
 
Functional Currency
 
% Owned by XPEL, Inc.
XPEL, Ltd.
 
UK Pound Sterling
 
85
%
Armourfend CAD, LLC
 
US Dollar
 
100
%
XPEL Canada Corp.
 
Canadian Dollar
 
100
%
XPEL B.V.
 
Euro
 
100
%
XPEL Germany GmbH
 
Euro
 
100
%
XPEL de Mexico S. de R.L. de C.V.
 
Peso
 
100
%
XPEL Acquisition Corp.
 
Canadian Dollar
 
100
%
Protex Canada, Inc.
 
Canadian Dollar
 
100
%
Apogee Corp.
 
New Taiwan Dollar
 
100
%

Schedules of Property, Plant and Equipment Depreciation expense is computed using the straight-line method as follows:
Furniture and fixtures
-   5 years
Computer equipment
-   3-4 years
Vehicles
-   5 years
Equipment
-   5-8 years
Leasehold improvements
-   shorter of lease term or estimate useful life
Plotters
-   4 years

The following table presents geographic property, plant and equipment, net by region as of December 31:
 
2019
 
2018
United States
$
2,410,737

 
$
2,288,792

Canada
519,066

 
421,588

Europe
679,112

 
475,345

Other
405,738

 
198,481

Consolidated
$
4,014,653

 
$
3,384,206


Property and equipment consists of the following:
 
December 31, 2019
 
December 31, 2018
Furniture and fixtures
$
1,168,894

 
$
956,467

Computer equipment
1,151,295

 
939,979

Vehicles
683,213

 
730,765

Equipment
1,648,656

 
1,079,503

Leasehold improvements
1,479,594

 
941,627

Plotters
839,455

 
544,080

Construction in Progress
306,100

 
646,576

Total property and equipment
7,277,207

 
5,838,997

Less: accumulated depreciation
3,262,554

 
2,454,791

Property and equipment, net
$
4,014,653

 
$
3,384,206


Schedule of Goodwill
The following table presents geographic Goodwill by region as of December 31:
 
2019
 
2018
United States
$
617,334

 
$
617,334

Canada
1,740,884

 
1,701,826

Other
48,294

 
3,628

Consolidated
$
2,406,512

 
$
2,322,788


The following table summarizes changes in the carrying amounts of goodwill for the years ended December 31, 2019 and 2018:
Balance at December 31, 2017
$
1,856,642

Additions
576,173

Foreign currency translation
(110,027
)
Balance at December 31, 2018
$
2,322,788

 
 
Balance at December 31, 2018
$
2,322,788

Additions
44,584

Impairment
(35,884
)
Foreign currency translation
75,024

Balance at December 31, 2019
$
2,406,512


Schedules of Intangible Assets
The following table presents geographic Intangible assets, net by region as of December 31:
 
2019

2018
United States
$
2,074,235

 
$
1,891,479

Canada
1,431,247

 
1,652,347

Europe
81,612

 
1,773

Other
233,366

 
258,427

Consolidated
$
3,820,460

 
$
3,804,026


The following table presents the anticipated useful lives of intangible assets:
Trademarks
 - 10 years
Software
 - 5 years
Trade name
 - 10-15 years
Contractual and customer relationships
 - 9-10 years
Non-compete
 - 3-5 years
Other
 - 10 years

Intangible assets consists of the following:
 
December 31, 2019
 
December 31, 2018
Trademarks
$
309,395

 
$
289,734

Software
2,288,062

 
1,635,731

Trade name
492,408

 
457,766

Contractual and customer relationships
3,010,480

 
2,947,264

Non-compete
268,459

 
261,914

Other
208,012

 
150,267

Total cost
6,576,816

 
5,742,676

Less: Accumulated amortization
2,756,356

 
1,938,650

Intangible assets, net
$
3,820,460

 
$
3,804,026


Schedule of Product Warranty Liability The following table presents a summary of our warranty liabilities as of December 31, 2019 and 2018:
 
2019
 
2018
Warranty balance at beginning of period
$
70,250

 
$
95,882

Warranties assumed in period
384,214

 
370,502

Payments
(388,873
)
 
(396,134
)
Warranty balance at end of period
$
65,591

 
$
70,250


XML 15 FilingSummary.xml IDEA: XBRL DOCUMENT 3.20.1 html 158 404 1 false 73 0 false 8 false false R1.htm 0001000 - Document - Cover Page Sheet http://www.xpel.com/role/CoverPage Cover Page Cover 1 false false R2.htm 1001000 - Statement - Consolidated Balance Sheets Sheet http://www.xpel.com/role/ConsolidatedBalanceSheets Consolidated Balance Sheets Statements 2 false false R3.htm 1001001 - Statement - Consolidated Balance Sheets (Parenthetical) Sheet http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical Consolidated Balance Sheets (Parenthetical) Statements 3 false false R4.htm 1003000 - Statement - Consolidated Statements of Income Sheet http://www.xpel.com/role/ConsolidatedStatementsOfIncome Consolidated Statements of Income Statements 4 false false R5.htm 1004000 - Statement - Consolidated Statements of Comprehensive Income Sheet http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome Consolidated Statements of Comprehensive Income Statements 5 false false R6.htm 1005000 - Statement - Consolidated Statements of Changes in Stockholders??? Equity Sheet http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity Consolidated Statements of Changes in Stockholders??? Equity Statements 6 false false R7.htm 1007000 - Statement - Consolidated Statements of Cash Flows Sheet http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows Consolidated Statements of Cash Flows Statements 7 false false R8.htm 2101100 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES Sheet http://www.xpel.com/role/SignificantAccountingPolicies SIGNIFICANT ACCOUNTING POLICIES Notes 8 false false R9.htm 2102100 - Disclosure - REVENUE Sheet http://www.xpel.com/role/Revenue REVENUE Notes 9 false false R10.htm 2103100 - Disclosure - PROPERTY AND EQUIPMENT, NET Sheet http://www.xpel.com/role/PropertyAndEquipmentNet PROPERTY AND EQUIPMENT, NET Notes 10 false false R11.htm 2104100 - Disclosure - INTANGIBLE ASSETS, NET Sheet http://www.xpel.com/role/IntangibleAssetsNet INTANGIBLE ASSETS, NET Notes 11 false false R12.htm 2113100 - Disclosure - GOODWILL Sheet http://www.xpel.com/role/Goodwill GOODWILL Notes 12 false false R13.htm 2116100 - Disclosure - INVENTORIES Sheet http://www.xpel.com/role/Inventories INVENTORIES Notes 13 false false R14.htm 2119100 - Disclosure - DEBT Sheet http://www.xpel.com/role/Debt DEBT Notes 14 false false R15.htm 2122100 - Disclosure - EMPLOYEE BENEFIT PLAN Sheet http://www.xpel.com/role/EmployeeBenefitPlan EMPLOYEE BENEFIT PLAN Notes 15 false false R16.htm 2125100 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES Sheet http://www.xpel.com/role/AccountsPayableAndAccruedLiabilities ACCOUNTS PAYABLE AND ACCRUED LIABILITIES Notes 16 false false R17.htm 2128100 - Disclosure - CAPITAL STOCK Sheet http://www.xpel.com/role/CapitalStock CAPITAL STOCK Notes 17 false false R18.htm 2134100 - Disclosure - STOCK OPTIONS Sheet http://www.xpel.com/role/StockOptions STOCK OPTIONS Notes 18 false false R19.htm 2137100 - Disclosure - FAIR VALUE MEASUREMENTS Sheet http://www.xpel.com/role/FairValueMeasurements FAIR VALUE MEASUREMENTS Notes 19 false false R20.htm 2138100 - Disclosure - INCOME TAXES Sheet http://www.xpel.com/role/IncomeTaxes INCOME TAXES Notes 20 false false R21.htm 2139100 - Disclosure - COMMITMENTS AND CONTINGENCIES Sheet http://www.xpel.com/role/CommitmentsAndContingencies COMMITMENTS AND CONTINGENCIES Notes 21 false false R22.htm 2140100 - Disclosure - LEASES Sheet http://www.xpel.com/role/Leases LEASES Notes 22 false false R23.htm 2141100 - Disclosure - BUSINESS COMBINATIONS Sheet http://www.xpel.com/role/BusinessCombinations BUSINESS COMBINATIONS Notes 23 false false R24.htm 2142100 - Disclosure - SUBSEQUENT EVENTS Sheet http://www.xpel.com/role/SubsequentEvents SUBSEQUENT EVENTS Notes 24 false false R25.htm 2201201 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesPolicies SIGNIFICANT ACCOUNTING POLICIES (Policies) Policies 25 false false R26.htm 2301302 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesTables SIGNIFICANT ACCOUNTING POLICIES (Tables) Tables http://www.xpel.com/role/SignificantAccountingPolicies 26 false false R27.htm 2302301 - Disclosure - REVENUE (Tables) Sheet http://www.xpel.com/role/RevenueTables REVENUE (Tables) Tables http://www.xpel.com/role/Revenue 27 false false R28.htm 2303301 - Disclosure - PROPERTY AND EQUIPMENT, NET (Tables) Sheet http://www.xpel.com/role/PropertyAndEquipmentNetTables PROPERTY AND EQUIPMENT, NET (Tables) Tables http://www.xpel.com/role/PropertyAndEquipmentNet 28 false false R29.htm 2304301 - Disclosure - INTANGIBLE ASSETS, NET (Tables) Sheet http://www.xpel.com/role/IntangibleAssetsNetTables INTANGIBLE ASSETS, NET (Tables) Tables http://www.xpel.com/role/IntangibleAssetsNet 29 false false R30.htm 2313301 - Disclosure - GOODWILL (Tables) Sheet http://www.xpel.com/role/GoodwillTables GOODWILL (Tables) Tables http://www.xpel.com/role/Goodwill 30 false false R31.htm 2316301 - Disclosure - INVENTORIES (Tables) Sheet http://www.xpel.com/role/InventoriesTables INVENTORIES (Tables) Tables http://www.xpel.com/role/Inventories 31 false false R32.htm 2319301 - Disclosure - DEBT (Tables) Sheet http://www.xpel.com/role/DebtTables DEBT (Tables) Tables http://www.xpel.com/role/Debt 32 false false R33.htm 2325301 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES (Tables) Sheet http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesTables ACCOUNTS PAYABLE AND ACCRUED LIABILITIES (Tables) Tables http://www.xpel.com/role/AccountsPayableAndAccruedLiabilities 33 false false R34.htm 2338301 - Disclosure - INCOME TAXES (Tables) Sheet http://www.xpel.com/role/IncomeTaxesTables INCOME TAXES (Tables) Tables http://www.xpel.com/role/IncomeTaxes 34 false false R35.htm 2340301 - Disclosure - LEASES (Tables) Sheet http://www.xpel.com/role/LeasesTables LEASES (Tables) Tables http://www.xpel.com/role/Leases 35 false false R36.htm 2341301 - Disclosure - BUSINESS COMBINATIONS (Tables) Sheet http://www.xpel.com/role/BusinessCombinationsTables BUSINESS COMBINATIONS (Tables) Tables http://www.xpel.com/role/BusinessCombinations 36 false false R37.htm 2401403 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Ownership Percentages and Functional Currencies (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails SIGNIFICANT ACCOUNTING POLICIES - Ownership Percentages and Functional Currencies (Details) Details 37 false false R38.htm 2401404 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Segment Reporting (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesSegmentReportingDetails SIGNIFICANT ACCOUNTING POLICIES - Segment Reporting (Details) Details 38 false false R39.htm 2401405 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accounts Receivable (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails SIGNIFICANT ACCOUNTING POLICIES - Accounts Receivable (Details) Details 39 false false R40.htm 2401406 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Inventory (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesInventoryDetails SIGNIFICANT ACCOUNTING POLICIES - Inventory (Details) Details 40 false false R41.htm 2401407 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Property, Plant and Equipment (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails SIGNIFICANT ACCOUNTING POLICIES - Property, Plant and Equipment (Details) Details 41 false false R42.htm 2401408 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Goodwill (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails SIGNIFICANT ACCOUNTING POLICIES - Goodwill (Details) Details 42 false false R43.htm 2401409 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Intangible Assets (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails SIGNIFICANT ACCOUNTING POLICIES - Intangible Assets (Details) Details 43 false false R44.htm 2401410 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Impairment of Long-Lived Assets (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesImpairmentOfLongLivedAssetsDetails SIGNIFICANT ACCOUNTING POLICIES - Impairment of Long-Lived Assets (Details) Details 44 false false R45.htm 2401411 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Research and Development (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesResearchAndDevelopmentDetails SIGNIFICANT ACCOUNTING POLICIES - Research and Development (Details) Details 45 false false R46.htm 2401412 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Advertising Costs (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesAdvertisingCostsDetails SIGNIFICANT ACCOUNTING POLICIES - Advertising Costs (Details) Details 46 false false R47.htm 2401413 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Provisions and Warranties (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesProvisionsAndWarrantiesDetails SIGNIFICANT ACCOUNTING POLICIES - Provisions and Warranties (Details) Details 47 false false R48.htm 2401414 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Recently Adopted Accounting Pronouncements (Details) Sheet http://www.xpel.com/role/SignificantAccountingPoliciesRecentlyAdoptedAccountingPronouncementsDetails SIGNIFICANT ACCOUNTING POLICIES - Recently Adopted Accounting Pronouncements (Details) Details 48 false false R49.htm 2402402 - Disclosure - REVENUE - Schedule of Transactions Within Contract Liabilities (Details) Sheet http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails REVENUE - Schedule of Transactions Within Contract Liabilities (Details) Details 49 false false R50.htm 2402403 - Disclosure - REVENUE - Disaggregation of Revenue (Details) Sheet http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails REVENUE - Disaggregation of Revenue (Details) Details 50 false false R51.htm 2402404 - Disclosure - REVENUE - Revenue Estimate By Geographic Area (Details) Sheet http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails REVENUE - Revenue Estimate By Geographic Area (Details) Details 51 false false R52.htm 2402405 - Disclosure - REVENUE - Narrative (Details) Sheet http://www.xpel.com/role/RevenueNarrativeDetails REVENUE - Narrative (Details) Details 52 false false R53.htm 2403402 - Disclosure - PROPERTY AND EQUIPMENT, NET - Schedule of Property, Plant and Equipment (Details) Sheet http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails PROPERTY AND EQUIPMENT, NET - Schedule of Property, Plant and Equipment (Details) Details 53 false false R54.htm 2403403 - Disclosure - PROPERTY AND EQUIPMENT, NET - Narrative (Details) Sheet http://www.xpel.com/role/PropertyAndEquipmentNetNarrativeDetails PROPERTY AND EQUIPMENT, NET - Narrative (Details) Details 54 false false R55.htm 2404402 - Disclosure - INTANGIBLE ASSETS, NET - Schedule of Intangible Assets (Details) Sheet http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails INTANGIBLE ASSETS, NET - Schedule of Intangible Assets (Details) Details 55 false false R56.htm 2404403 - Disclosure - INTANGIBLE ASSETS, NET - Narrative (Details) Sheet http://www.xpel.com/role/IntangibleAssetsNetNarrativeDetails INTANGIBLE ASSETS, NET - Narrative (Details) Details 56 false false R57.htm 2404404 - Disclosure - INTANGIBLE ASSETS, NET - Schedule of Future Amortization Expense of Finite-Lived Intangible Assets (Details) Sheet http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails INTANGIBLE ASSETS, NET - Schedule of Future Amortization Expense of Finite-Lived Intangible Assets (Details) Details 57 false false R58.htm 2413402 - Disclosure - GOODWILL - Schedule of Goodwill (Details) Sheet http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails GOODWILL - Schedule of Goodwill (Details) Details 58 false false R59.htm 2413403 - Disclosure - GOODWILL - Narrative (Details) Sheet http://www.xpel.com/role/GoodwillNarrativeDetails GOODWILL - Narrative (Details) Details 59 false false R60.htm 2416402 - Disclosure - INVENTORIES - Schedule of Inventory (Details) Sheet http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails INVENTORIES - Schedule of Inventory (Details) Details 60 false false R61.htm 2419402 - Disclosure - DEBT - Narrative (Details) Sheet http://www.xpel.com/role/DebtNarrativeDetails DEBT - Narrative (Details) Details 61 false false R62.htm 2419403 - Disclosure - DEBT - Schedule of Notes Payable (Details) Notes http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails DEBT - Schedule of Notes Payable (Details) Details 62 false false R63.htm 2419404 - Disclosure - DEBT - Schedule of Debt Maturities (Details) Sheet http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails DEBT - Schedule of Debt Maturities (Details) Details 63 false false R64.htm 2422401 - Disclosure - EMPLOYEE BENEFIT PLAN - Narrative (Details) Sheet http://www.xpel.com/role/EmployeeBenefitPlanNarrativeDetails EMPLOYEE BENEFIT PLAN - Narrative (Details) Details 64 false false R65.htm 2425402 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES - Schedule of Accounts Payable and Accrued Liability (Details) Sheet http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails ACCOUNTS PAYABLE AND ACCRUED LIABILITIES - Schedule of Accounts Payable and Accrued Liability (Details) Details 65 false false R66.htm 2428401 - Disclosure - CAPITAL STOCK - Narrative (Details) Sheet http://www.xpel.com/role/CapitalStockNarrativeDetails CAPITAL STOCK - Narrative (Details) Details 66 false false R67.htm 2434401 - Disclosure - STOCK OPTIONS - Narrative (Details) Sheet http://www.xpel.com/role/StockOptionsNarrativeDetails STOCK OPTIONS - Narrative (Details) Details 67 false false R68.htm 2438402 - Disclosure - INCOME TAXES - Income Before Income Tax (Details) Sheet http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails INCOME TAXES - Income Before Income Tax (Details) Details 68 false false R69.htm 2438403 - Disclosure - INCOME TAXES - Narrative (Details) Sheet http://www.xpel.com/role/IncomeTaxesNarrativeDetails INCOME TAXES - Narrative (Details) Details 69 false false R70.htm 2438404 - Disclosure - INCOME TAXES - Income Taxes Provision Difference (Details) Sheet http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails INCOME TAXES - Income Taxes Provision Difference (Details) Details 70 false false R71.htm 2438405 - Disclosure - INCOME TAXES - Components of the Income Tax Provision (Benefit) (Details) Sheet http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails INCOME TAXES - Components of the Income Tax Provision (Benefit) (Details) Details 71 false false R72.htm 2438406 - Disclosure - INCOME TAXES - Components of Deferred Income Tax Assets (Liabilities) (Details) Sheet http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails INCOME TAXES - Components of Deferred Income Tax Assets (Liabilities) (Details) Details 72 false false R73.htm 2439401 - Disclosure - COMMITMENTS AND CONTINGENCIES - Narrative (Details) Sheet http://www.xpel.com/role/CommitmentsAndContingenciesNarrativeDetails COMMITMENTS AND CONTINGENCIES - Narrative (Details) Details 73 false false R74.htm 2440402 - Disclosure - LEASES - Schedule of Balance Sheet Information Related to Leases (Details) Sheet http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails LEASES - Schedule of Balance Sheet Information Related to Leases (Details) Details 74 false false R75.htm 2440403 - Disclosure - LEASES - Narrative (Details) Sheet http://www.xpel.com/role/LeasesNarrativeDetails LEASES - Narrative (Details) Details 75 false false R76.htm 2440404 - Disclosure - LEASES - Schedule of Weighted Average Remaining Lease Term and Discount Rate Information (Details) Sheet http://www.xpel.com/role/LeasesScheduleOfWeightedAverageRemainingLeaseTermAndDiscountRateInformationDetails LEASES - Schedule of Weighted Average Remaining Lease Term and Discount Rate Information (Details) Details 76 false false R77.htm 2440405 - Disclosure - LEASES - Schedule of Maturities of Operating Lease Liabilities (Details) Sheet http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails LEASES - Schedule of Maturities of Operating Lease Liabilities (Details) Details 77 false false R78.htm 2440406 - Disclosure - LEASES - Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) Sheet http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails LEASES - Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details) Details 78 false false R79.htm 2441402 - Disclosure - BUSINESS COMBINATIONS - Business Combinations Complete by Year-End (Details) Sheet http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails BUSINESS COMBINATIONS - Business Combinations Complete by Year-End (Details) Details 79 false false R80.htm 2441403 - Disclosure - BUSINESS COMBINATIONS - Acquisition Purchase Price (Details) Sheet http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails BUSINESS COMBINATIONS - Acquisition Purchase Price (Details) Details 80 false false R81.htm 2441404 - Disclosure - BUSINESS COMBINATIONS - Narrative (Details) Sheet http://www.xpel.com/role/BusinessCombinationsNarrativeDetails BUSINESS COMBINATIONS - Narrative (Details) Details 81 false false R82.htm 2441405 - Disclosure - BUSINESS COMBINATIONS - Pro Forma Results (Details) Sheet http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails BUSINESS COMBINATIONS - Pro Forma Results (Details) Details 82 false false R83.htm 2442401 - Disclosure - SUBSEQUENT EVENTS - Narrative (Details) Sheet http://www.xpel.com/role/SubsequentEventsNarrativeDetails SUBSEQUENT EVENTS - Narrative (Details) Details 83 false false All Reports Book All Reports a201910-kxpel.htm a201910-kexhibit211.htm a201910-kexhibit311.htm a201910-kexhibit312.htm a201910-kexhibit321.htm a201910-kexhibit322.htm a201910-kexhibit41.htm xpel-20191231.xsd xpel-20191231_cal.xml xpel-20191231_def.xml xpel-20191231_lab.xml xpel-20191231_pre.xml http://xbrl.sec.gov/country/2017-01-31 http://fasb.org/srt/2019-01-31 http://fasb.org/us-gaap/2019-01-31 http://xbrl.sec.gov/dei/2019-01-31 true true XML 16 R6.htm IDEA: XBRL DOCUMENT v3.20.1
Consolidated Statements of Changes in Stockholders’ Equity - USD ($)
Total
Common Stock
Additional Paid-in-Capital
Retained Earnings
Accumulated Other Comprehensive Loss
Equity attributable to Stockholders of the Company
Non-Controlling Interest
Beginning stock outstanding balance (in shares) at Dec. 31, 2017   27,612,597          
Beginning balance at Dec. 31, 2017 $ 12,495,386 $ 27,613 $ 11,348,163 $ 1,904,719 $ (596,683) $ 12,683,812 $ (188,426)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Net income 8,721,232     8,712,534   8,712,534 8,698
Foreign currency translation (603,673)       (593,372) (593,372) (10,301)
Ending stock outstanding balance (in shares) at Dec. 31, 2018   27,612,597          
Ending balance at Dec. 31, 2018 $ 20,612,945 $ 27,613 11,348,163 10,617,253 (1,190,055) 20,802,974 (190,029)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Common stock shares issued (in shares) 27,612,597            
Common stock, $0.001 par value; 100,000,000 shares authorized; 27,612,597 issued and outstanding $ 27,613            
Net income 13,995,072     13,977,625   13,977,625 17,447
Foreign currency translation 285,193       281,291 281,291 3,902
Ending balance at Dec. 31, 2019 $ 34,893,210   $ 11,348,163 $ 24,594,878 $ (908,764) $ 35,061,890 $ (168,680)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Common stock shares issued (in shares) 27,612,597            
Common stock, $0.001 par value; 100,000,000 shares authorized; 27,612,597 issued and outstanding $ 27,613            
XML 17 R2.htm IDEA: XBRL DOCUMENT v3.20.1
Consolidated Balance Sheets - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Current    
Cash and cash equivalents $ 11,500,973 $ 3,971,226
Accounts receivable, net 7,154,084 5,554,313
Inventory, net 15,141,153 10,799,611
Prepaid expenses and other current assets 2,391,340 706,718
Income tax receivable 93,150 0
Total current assets 36,280,700 21,031,868
Property and equipment, net 4,014,653 3,384,206
Right-of-Use lease assets 5,079,110  
Intangible assets, net 3,820,460 3,804,026
Goodwill 2,406,512 2,322,788
Total assets 51,601,435 30,542,888
Current    
Current portion of notes payable 462,226 853,150
Current portion lease liabilities 1,126,701  
Accounts payable and accrued liabilities 10,197,353 6,292,093
Income tax payable 0 1,337,599
Total current liabilities 11,786,280 8,482,842
Deferred tax liability, net 604,715 478,864
Non-current portion of lease liabilities 4,009,949  
Non-current portion of notes payable 307,281 968,237
Total liabilities 16,708,225 9,929,943
Stockholders’ equity    
Preferred stock, $0.001 par value; authorized 10,000,000; none issued and outstanding 0 0
Common stock, $0.001 par value; 100,000,000 shares authorized; 27,612,597 issued and outstanding 27,613 27,613
Additional paid-in-capital 11,348,163 11,348,163
Accumulated other comprehensive loss (908,764) (1,190,055)
Retained earnings 24,594,878 10,617,253
Equity attributable to stockholders of the company 35,061,890 20,802,974
Non-controlling interest (168,680) (190,029)
Total stockholders’ equity 34,893,210 20,612,945
Total liabilities and stockholders’ equity $ 51,601,435 $ 30,542,888
XML 18 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; } JSON 19 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "a201910-kxpel.htm": { "axisCustom": 2, "axisStandard": 18, "contextCount": 158, "dts": { "calculationLink": { "local": [ "xpel-20191231_cal.xml" ] }, "definitionLink": { "local": [ "xpel-20191231_def.xml" ], "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml", "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml" ] }, "inline": { "local": [ "a201910-kxpel.htm" ] }, "labelLink": { "local": [ "xpel-20191231_lab.xml" ], "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-doc-2019-01-31.xml", "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml" ] }, "presentationLink": { "local": [ "xpel-20191231_pre.xml" ] }, "referenceLink": { "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-ref-2019-01-31.xml", "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml" ] }, "schema": { "local": [ "xpel-20191231.xsd" ], "remote": [ "http://xbrl.fasb.org/srt/2019/elts/srt-types-2019-01-31.xsd", "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/dtr/type/numeric-2009-12-16.xsd", "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://xbrl.fasb.org/srt/2019/elts/srt-2019-01-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd", "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd", "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-01-31.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", "https://xbrl.sec.gov/currency/2019/currency-2019-01-31.xsd", "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.xsd", "https://xbrl.sec.gov/exch/2019/exch-2019-01-31.xsd", "http://xbrl.sec.gov/naics/2017/naics-2017-01-31.xsd", "http://xbrl.sec.gov/sic/2011/sic-2011-01-31.xsd", "https://xbrl.sec.gov/stpr/2018/stpr-2018-01-31.xsd", "http://www.xbrl.org/lrr/role/deprecated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-parts-codification-2019-01-31.xsd" ] } }, "elementCount": 522, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2019-01-31": 37, "http://www.xpel.com/20191231": 1, "http://xbrl.sec.gov/dei/2019-01-31": 5, "total": 43 }, "keyCustom": 60, "keyStandard": 344, "memberCustom": 31, "memberStandard": 37, "nsprefix": "xpel", "nsuri": "http://www.xpel.com/20191231", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "0001000 - Document - Cover Page", "role": "http://www.xpel.com/role/CoverPage", "shortName": "Cover Page", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2103100 - Disclosure - PROPERTY AND EQUIPMENT, NET", "role": "http://www.xpel.com/role/PropertyAndEquipmentNet", "shortName": "PROPERTY AND EQUIPMENT, NET", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2104100 - Disclosure - INTANGIBLE ASSETS, NET", "role": "http://www.xpel.com/role/IntangibleAssetsNet", "shortName": "INTANGIBLE ASSETS, NET", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2113100 - Disclosure - GOODWILL", "role": "http://www.xpel.com/role/Goodwill", "shortName": "GOODWILL", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2116100 - Disclosure - INVENTORIES", "role": "http://www.xpel.com/role/Inventories", "shortName": "INVENTORIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2119100 - Disclosure - DEBT", "role": "http://www.xpel.com/role/Debt", "shortName": "DEBT", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2122100 - Disclosure - EMPLOYEE BENEFIT PLAN", "role": "http://www.xpel.com/role/EmployeeBenefitPlan", "shortName": "EMPLOYEE BENEFIT PLAN", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2125100 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES", "role": "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilities", "shortName": "ACCOUNTS PAYABLE AND ACCRUED LIABILITIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2128100 - Disclosure - CAPITAL STOCK", "role": "http://www.xpel.com/role/CapitalStock", "shortName": "CAPITAL STOCK", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2134100 - Disclosure - STOCK OPTIONS", "role": "http://www.xpel.com/role/StockOptions", "shortName": "STOCK OPTIONS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2137100 - Disclosure - FAIR VALUE MEASUREMENTS", "role": "http://www.xpel.com/role/FairValueMeasurements", "shortName": "FAIR VALUE MEASUREMENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1001000 - Statement - Consolidated Balance Sheets", "role": "http://www.xpel.com/role/ConsolidatedBalanceSheets", "shortName": "Consolidated Balance Sheets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2138100 - Disclosure - INCOME TAXES", "role": "http://www.xpel.com/role/IncomeTaxes", "shortName": "INCOME TAXES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2139100 - Disclosure - COMMITMENTS AND CONTINGENCIES", "role": "http://www.xpel.com/role/CommitmentsAndContingencies", "shortName": "COMMITMENTS AND CONTINGENCIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2140100 - Disclosure - LEASES", "role": "http://www.xpel.com/role/Leases", "shortName": "LEASES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:BusinessCombinationsAndAssetAcquisitionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2141100 - Disclosure - BUSINESS COMBINATIONS", "role": "http://www.xpel.com/role/BusinessCombinations", "shortName": "BUSINESS COMBINATIONS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:BusinessCombinationsAndAssetAcquisitionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2142100 - Disclosure - SUBSEQUENT EVENTS", "role": "http://www.xpel.com/role/SubsequentEvents", "shortName": "SUBSEQUENT EVENTS", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2201201 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Policies)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:ScheduleOfOwnershipInterestsAndFunctionalCurrenciesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2301302 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES (Tables)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesTables", "shortName": "SIGNIFICANT ACCOUNTING POLICIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:ScheduleOfOwnershipInterestsAndFunctionalCurrenciesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2302301 - Disclosure - REVENUE (Tables)", "role": "http://www.xpel.com/role/RevenueTables", "shortName": "REVENUE (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2303301 - Disclosure - PROPERTY AND EQUIPMENT, NET (Tables)", "role": "http://www.xpel.com/role/PropertyAndEquipmentNetTables", "shortName": "PROPERTY AND EQUIPMENT, NET (Tables)", "subGroupType": "tables", "uniqueAnchor": null }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "reportCount": 1, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2304301 - Disclosure - INTANGIBLE ASSETS, NET (Tables)", "role": "http://www.xpel.com/role/IntangibleAssetsNetTables", "shortName": "INTANGIBLE ASSETS, NET (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "lang": "en-US", "name": "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockSharesIssued", "reportCount": 1, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1001001 - Statement - Consolidated Balance Sheets (Parenthetical)", "role": "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical", "shortName": "Consolidated Balance Sheets (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R30": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2313301 - Disclosure - GOODWILL (Tables)", "role": "http://www.xpel.com/role/GoodwillTables", "shortName": "GOODWILL (Tables)", "subGroupType": "tables", "uniqueAnchor": null }, "R31": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2316301 - Disclosure - INVENTORIES (Tables)", "role": "http://www.xpel.com/role/InventoriesTables", "shortName": "INVENTORIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2319301 - Disclosure - DEBT (Tables)", "role": "http://www.xpel.com/role/DebtTables", "shortName": "DEBT (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2325301 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES (Tables)", "role": "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesTables", "shortName": "ACCOUNTS PAYABLE AND ACCRUED LIABILITIES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2338301 - Disclosure - INCOME TAXES (Tables)", "role": "http://www.xpel.com/role/IncomeTaxesTables", "shortName": "INCOME TAXES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:AssetsAndLiabilitiesLesseeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2340301 - Disclosure - LEASES (Tables)", "role": "http://www.xpel.com/role/LeasesTables", "shortName": "LEASES (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:AssetsAndLiabilitiesLesseeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:ScheduleOfBusinessAndAssetAcquisitionsByAcquisitionTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2341301 - Disclosure - BUSINESS COMBINATIONS (Tables)", "role": "http://www.xpel.com/role/BusinessCombinationsTables", "shortName": "BUSINESS COMBINATIONS (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:ScheduleOfBusinessAndAssetAcquisitionsByAcquisitionTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_srt_OwnershipAxis_xpel_XPELLtd.Member", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:MinorityInterestOwnershipPercentageByParent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401403 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Ownership Percentages and Functional Currencies (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Ownership Percentages and Functional Currencies (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_srt_OwnershipAxis_xpel_XPELLtd.Member", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:MinorityInterestOwnershipPercentageByParent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "span", "div", "us-gaap:SegmentReportingPolicyPolicyTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401404 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Segment Reporting (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesSegmentReportingDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Segment Reporting (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "us-gaap:SegmentReportingPolicyPolicyTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "span", "us-gaap:TradeAndOtherAccountsReceivablePolicy", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401405 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Accounts Receivable (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Accounts Receivable (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "us-gaap:TradeAndOtherAccountsReceivablePolicy", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1003000 - Statement - Consolidated Statements of Income", "role": "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "shortName": "Consolidated Statements of Income", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "lang": null, "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:InventoryValuationReserves", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401406 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Inventory (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesInventoryDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Inventory (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R41": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401407 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Property, Plant and Equipment (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Property, Plant and Equipment (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_srt_StatementGeographicalAxis_country_US", "decimals": "0", "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "first": true, "lang": null, "name": "xpel:NumberOfLocationsClosed", "reportCount": 1, "unitRef": "installation_location", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401408 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Goodwill (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_srt_StatementGeographicalAxis_country_US", "decimals": "0", "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401409 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Intangible Assets (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_srt_StatementGeographicalAxis_country_US", "decimals": "0", "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "first": true, "lang": null, "name": "xpel:NumberOfLocationsClosed", "reportCount": 1, "unitRef": "installation_location", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401410 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Impairment of Long-Lived Assets (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesImpairmentOfLongLivedAssetsDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Impairment of Long-Lived Assets (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R45": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ResearchAndDevelopmentExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401411 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Research and Development (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesResearchAndDevelopmentDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Research and Development (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ResearchAndDevelopmentExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AdvertisingExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401412 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Advertising Costs (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesAdvertisingCostsDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Advertising Costs (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AdvertisingExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2018Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:StandardProductWarrantyAccrual", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401413 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Provisions and Warranties (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesProvisionsAndWarrantiesDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Provisions and Warranties (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2017Q4", "decimals": "0", "lang": null, "name": "us-gaap:StandardProductWarrantyAccrual", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "span", "div", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2401414 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES - Recently Adopted Accounting Pronouncements (Details)", "role": "http://www.xpel.com/role/SignificantAccountingPoliciesRecentlyAdoptedAccountingPronouncementsDetails", "shortName": "SIGNIFICANT ACCOUNTING POLICIES - Recently Adopted Accounting Pronouncements (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R49": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2018Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2402402 - Disclosure - REVENUE - Schedule of Transactions Within Contract Liabilities (Details)", "role": "http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails", "shortName": "REVENUE - Schedule of Transactions Within Contract Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1004000 - Statement - Consolidated Statements of Comprehensive Income", "role": "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome", "shortName": "Consolidated Statements of Comprehensive Income", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "lang": null, "name": "us-gaap:ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2402403 - Disclosure - REVENUE - Disaggregation of Revenue (Details)", "role": "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails", "shortName": "REVENUE - Disaggregation of Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_srt_ProductOrServiceAxis_xpel_ProductRevenuePaintProtectionFilmMember", "decimals": "0", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2402404 - Disclosure - REVENUE - Revenue Estimate By Geographic Area (Details)", "role": "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "shortName": "REVENUE - Revenue Estimate By Geographic Area (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_srt_StatementGeographicalAxis_country_US", "decimals": "0", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "span", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_srt_MajorCustomersAxis_xpel_TheChinaDistributorMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_RevenueFromContractWithCustomerMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2402405 - Disclosure - REVENUE - Narrative (Details)", "role": "http://www.xpel.com/role/RevenueNarrativeDetails", "shortName": "REVENUE - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "ix:continuation", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_srt_MajorCustomersAxis_xpel_TheChinaDistributorMember_us-gaap_ConcentrationRiskByBenchmarkAxis_us-gaap_RevenueFromContractWithCustomerMember_us-gaap_ConcentrationRiskByTypeAxis_us-gaap_CustomerConcentrationRiskMember", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2403402 - Disclosure - PROPERTY AND EQUIPMENT, NET - Schedule of Property, Plant and Equipment (Details)", "role": "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "shortName": "PROPERTY AND EQUIPMENT, NET - Schedule of Property, Plant and Equipment (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:Depreciation", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2403403 - Disclosure - PROPERTY AND EQUIPMENT, NET - Narrative (Details)", "role": "http://www.xpel.com/role/PropertyAndEquipmentNetNarrativeDetails", "shortName": "PROPERTY AND EQUIPMENT, NET - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R55": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2404402 - Disclosure - INTANGIBLE ASSETS, NET - Schedule of Intangible Assets (Details)", "role": "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "shortName": "INTANGIBLE ASSETS, NET - Schedule of Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AmortizationOfIntangibleAssets", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2404403 - Disclosure - INTANGIBLE ASSETS, NET - Narrative (Details)", "role": "http://www.xpel.com/role/IntangibleAssetsNetNarrativeDetails", "shortName": "INTANGIBLE ASSETS, NET - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R57": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2404404 - Disclosure - INTANGIBLE ASSETS, NET - Schedule of Future Amortization Expense of Finite-Lived Intangible Assets (Details)", "role": "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails", "shortName": "INTANGIBLE ASSETS, NET - Schedule of Future Amortization Expense of Finite-Lived Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2018Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2413402 - Disclosure - GOODWILL - Schedule of Goodwill (Details)", "role": "http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails", "shortName": "GOODWILL - Schedule of Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "lang": null, "name": "us-gaap:GoodwillAcquiredDuringPeriod", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:GoodwillImpairmentLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2413403 - Disclosure - GOODWILL - Narrative (Details)", "role": "http://www.xpel.com/role/GoodwillNarrativeDetails", "shortName": "GOODWILL - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R6": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1005000 - Statement - Consolidated Statements of Changes in Stockholders\u2019 Equity", "role": "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity", "shortName": "Consolidated Statements of Changes in Stockholders\u2019 Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2017Q4_us-gaap_StatementEquityComponentsAxis_us-gaap_CommonStockMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "xpel:OtherInventoryFilmAndFilmBasedProductsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2416402 - Disclosure - INVENTORIES - Schedule of Inventory (Details)", "role": "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails", "shortName": "INVENTORIES - Schedule of Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "xpel:OtherInventoryFilmAndFilmBasedProductsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_LineOfCreditFacilityAxis_xpel_TheBankOfSanAntonioMember_us-gaap_LongtermDebtTypeAxis_us-gaap_LineOfCreditMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2419402 - Disclosure - DEBT - Narrative (Details)", "role": "http://www.xpel.com/role/DebtNarrativeDetails", "shortName": "DEBT - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_us-gaap_CreditFacilityAxis_us-gaap_RevolvingCreditFacilityMember_us-gaap_LineOfCreditFacilityAxis_xpel_TheBankOfSanAntonioMember_us-gaap_LongtermDebtTypeAxis_us-gaap_LineOfCreditMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:NotesPayableCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2419403 - Disclosure - DEBT - Schedule of Notes Payable (Details)", "role": "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails", "shortName": "DEBT - Schedule of Notes Payable (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfDebtTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4_us-gaap_DebtInstrumentAxis_xpel_AcquisitionNotesPayableDue2022Member", "decimals": "4", "lang": null, "name": "us-gaap:DebtWeightedAverageInterestRate", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2419404 - Disclosure - DEBT - Schedule of Debt Maturities (Details)", "role": "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails", "shortName": "DEBT - Schedule of Debt Maturities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:DefinedContributionPlanCostRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2422401 - Disclosure - EMPLOYEE BENEFIT PLAN - Narrative (Details)", "role": "http://www.xpel.com/role/EmployeeBenefitPlanNarrativeDetails", "shortName": "EMPLOYEE BENEFIT PLAN - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:DefinedContributionPlanCostRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AccountsPayableTradeCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2425402 - Disclosure - ACCOUNTS PAYABLE AND ACCRUED LIABILITIES - Schedule of Accounts Payable and Accrued Liability (Details)", "role": "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails", "shortName": "ACCOUNTS PAYABLE AND ACCRUED LIABILITIES - Schedule of Accounts Payable and Accrued Liability (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "us-gaap:ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:AccountsPayableTradeCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockSharesIssued", "reportCount": 1, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2428401 - Disclosure - CAPITAL STOCK - Narrative (Details)", "role": "http://www.xpel.com/role/CapitalStockNarrativeDetails", "shortName": "CAPITAL STOCK - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R67": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "first": true, "lang": null, "name": "xpel:SharebasedCompensationArrangementBySharebasedPaymentAwardSharesAllocatedToBenefitPlanBasedOnSharesOutstandingAndIssuedThresholdPercent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2434401 - Disclosure - STOCK OPTIONS - Narrative (Details)", "role": "http://www.xpel.com/role/StockOptionsNarrativeDetails", "shortName": "STOCK OPTIONS - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "first": true, "lang": null, "name": "xpel:SharebasedCompensationArrangementBySharebasedPaymentAwardSharesAllocatedToBenefitPlanBasedOnSharesOutstandingAndIssuedThresholdPercent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438402 - Disclosure - INCOME TAXES - Income Before Income Tax (Details)", "role": "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails", "shortName": "INCOME TAXES - Income Before Income Tax (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "D2017Q4DEC22", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438403 - Disclosure - INCOME TAXES - Narrative (Details)", "role": "http://www.xpel.com/role/IncomeTaxesNarrativeDetails", "shortName": "INCOME TAXES - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "D2017Q4DEC22", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1007000 - Statement - Consolidated Statements of Cash Flows", "role": "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows", "shortName": "Consolidated Statements of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "lang": null, "name": "us-gaap:AssetImpairmentCharges", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R70": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438404 - Disclosure - INCOME TAXES - Income Taxes Provision Difference (Details)", "role": "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails", "shortName": "INCOME TAXES - Income Taxes Provision Difference (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "INF", "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R71": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438405 - Disclosure - INCOME TAXES - Components of the Income Tax Provision (Benefit) (Details)", "role": "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails", "shortName": "INCOME TAXES - Components of the Income Tax Provision (Benefit) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:CurrentFederalTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R72": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438406 - Disclosure - INCOME TAXES - Components of Deferred Income Tax Assets (Liabilities) (Details)", "role": "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails", "shortName": "INCOME TAXES - Components of Deferred Income Tax Assets (Liabilities) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R73": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:LongtermPurchaseCommitmentRenewalOptionNotice", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2439401 - Disclosure - COMMITMENTS AND CONTINGENCIES - Narrative (Details)", "role": "http://www.xpel.com/role/CommitmentsAndContingenciesNarrativeDetails", "shortName": "COMMITMENTS AND CONTINGENCIES - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "xpel:LongtermPurchaseCommitmentRenewalOptionNotice", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R74": { "firstAnchor": { "ancestors": [ "span", "span", "div", "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440402 - Disclosure - LEASES - Schedule of Balance Sheet Information Related to Leases (Details)", "role": "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails", "shortName": "LEASES - Schedule of Balance Sheet Information Related to Leases (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R75": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440403 - Disclosure - LEASES - Narrative (Details)", "role": "http://www.xpel.com/role/LeasesNarrativeDetails", "shortName": "LEASES - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeaseExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R76": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440404 - Disclosure - LEASES - Schedule of Weighted Average Remaining Lease Term and Discount Rate Information (Details)", "role": "http://www.xpel.com/role/LeasesScheduleOfWeightedAverageRemainingLeaseTermAndDiscountRateInformationDetails", "shortName": "LEASES - Schedule of Weighted Average Remaining Lease Term and Discount Rate Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R77": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440405 - Disclosure - LEASES - Schedule of Maturities of Operating Lease Liabilities (Details)", "role": "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails", "shortName": "LEASES - Schedule of Maturities of Operating Lease Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R78": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2018Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440406 - Disclosure - LEASES - Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details)", "role": "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails", "shortName": "LEASES - Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2018Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:OperatingLeasesFutureMinimumPaymentsDueCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R79": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "D2018Q2APR01_us-gaap_BusinessAcquisitionAxis_xpel_QuebecIncQuebecCityMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2441402 - Disclosure - BUSINESS COMBINATIONS - Business Combinations Complete by Year-End (Details)", "role": "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "shortName": "BUSINESS COMBINATIONS - Business Combinations Complete by Year-End (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "D2018Q2APR01_us-gaap_BusinessAcquisitionAxis_xpel_QuebecIncQuebecCityMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2101100 - Disclosure - SIGNIFICANT ACCOUNTING POLICIES", "role": "http://www.xpel.com/role/SignificantAccountingPolicies", "shortName": "SIGNIFICANT ACCOUNTING POLICIES", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R80": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FI2019Q4", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2441403 - Disclosure - BUSINESS COMBINATIONS - Acquisition Purchase Price (Details)", "role": "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "shortName": "BUSINESS COMBINATIONS - Acquisition Purchase Price (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "xpel:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedAssetAndBusinessCombinationsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2018Q4YTD_xpel_BusinessAndAssetAcquisitionAxis_xpel_SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember", "decimals": "0", "lang": null, "name": "xpel:PaymentsForBusinessCombinationAndAssetAcquisition", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R81": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_xpel_AssetAcquisitionAxis_xpel_PaintshieldLtdMember", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2441404 - Disclosure - BUSINESS COMBINATIONS - Narrative (Details)", "role": "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "shortName": "BUSINESS COMBINATIONS - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_xpel_AssetAcquisitionAxis_xpel_PaintshieldLtdMember", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R82": { "firstAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_xpel_PaintshieldLtdMember", "decimals": "0", "first": true, "lang": null, "name": "xpel:BusinessAndAssetAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2441405 - Disclosure - BUSINESS COMBINATIONS - Pro Forma Results (Details)", "role": "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails", "shortName": "BUSINESS COMBINATIONS - Pro Forma Results (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "td", "tr", "table", "div", "div", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD_us-gaap_BusinessAcquisitionAxis_xpel_PaintshieldLtdMember", "decimals": "0", "first": true, "lang": null, "name": "xpel:BusinessAndAssetAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R83": { "firstAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "I2020Q1FEB01_us-gaap_BusinessAcquisitionAxis_xpel_ProtexCanadaInc.Member_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired", "reportCount": 1, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2442401 - Disclosure - SUBSEQUENT EVENTS - Narrative (Details)", "role": "http://www.xpel.com/role/SubsequentEventsNarrativeDetails", "shortName": "SUBSEQUENT EVENTS - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "span", "div", "ix:continuation", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "D2020Q1Feb01_us-gaap_BusinessAcquisitionAxis_xpel_ProtexCanadaInc.Member_us-gaap_SubsequentEventTypeAxis_us-gaap_SubsequentEventMember", "decimals": "0", "lang": null, "name": "us-gaap:PaymentsToAcquireBusinessesGross", "reportCount": 1, "unique": true, "unitRef": "cad", "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2102100 - Disclosure - REVENUE", "role": "http://www.xpel.com/role/Revenue", "shortName": "REVENUE", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "div", "body", "html" ], "baseRef": "a201910-kxpel.htm", "contextRef": "FD2019Q4YTD", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 73, "tag": { "country_CA": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CANADA", "terseLabel": "Canada" } } }, "localname": "CA", "nsuri": "http://xbrl.sec.gov/country/2017-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "country_CN": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "CHINA", "terseLabel": "China" } } }, "localname": "CN", "nsuri": "http://xbrl.sec.gov/country/2017-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "country_GB": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "UNITED KINGDOM", "terseLabel": "United Kingdom" } } }, "localname": "GB", "nsuri": "http://xbrl.sec.gov/country/2017-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "country_US": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "UNITED STATES", "terseLabel": "United States" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2017-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag", "terseLabel": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Area code of city", "label": "City Area Code", "terseLabel": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cover page.", "label": "Cover page." } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentAnnualReport": { "auth_ref": [ "r335" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true only for a form used as an annual report.", "label": "Document Annual Report", "terseLabel": "Document Annual Report" } } }, "localname": "DocumentAnnualReport", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented. If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.", "label": "Document Period End Date", "terseLabel": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "dateItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r334" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report", "terseLabel": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type", "terseLabel": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "submissionTypeItemType" }, "dei_DocumentsIncorporatedByReferenceTextBlock": { "auth_ref": [ "r332" ], "lang": { "en-US": { "role": { "documentation": "Documents incorporated by reference.", "label": "Documents Incorporated by Reference [Text Block]", "terseLabel": "Documents Incorporated by Reference" } } }, "localname": "DocumentsIncorporatedByReferenceTextBlock", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "textBlockItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One", "terseLabel": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town", "terseLabel": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code", "terseLabel": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province", "terseLabel": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status", "terseLabel": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company", "terseLabel": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntityExTransitionPeriod": { "auth_ref": [ "r338" ], "lang": { "en-US": { "role": { "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards.", "label": "Entity Ex Transition Period", "terseLabel": "Entity Ex Transition Period" } } }, "localname": "EntityExTransitionPeriod", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number", "terseLabel": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category", "terseLabel": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code", "terseLabel": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r337" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current", "terseLabel": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityPublicFloat": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.", "label": "Entity Public Float", "terseLabel": "Entity Public Float" } } }, "localname": "EntityPublicFloat", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "monetaryItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company", "terseLabel": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business", "terseLabel": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r336" ], "lang": { "en-US": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number", "terseLabel": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "employerIdItemType" }, "dei_EntityVoluntaryFilers": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.", "label": "Entity Voluntary Filers", "terseLabel": "Entity Voluntary Filers" } } }, "localname": "EntityVoluntaryFilers", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityWellKnownSeasonedIssuer": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A.", "label": "Entity Well-known Seasoned Issuer", "terseLabel": "Entity Well-known Seasoned Issuer" } } }, "localname": "EntityWellKnownSeasonedIssuer", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number", "terseLabel": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r331" ], "lang": { "en-US": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security", "terseLabel": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r333" ], "lang": { "en-US": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name", "terseLabel": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol", "terseLabel": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.xpel.com/role/CoverPage" ], "xbrltype": "tradingSymbolItemType" }, "srt_AsiaPacificMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Asia Pacific [Member]", "terseLabel": "Asia Pacific" } } }, "localname": "AsiaPacificMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_EuropeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Europe [Member]", "terseLabel": "Continental Europe", "verboseLabel": "Europe" } } }, "localname": "EuropeMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "srt_LatinAmericaMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Latin America [Member]", "terseLabel": "Latin America" } } }, "localname": "LatinAmericaMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r124", "r196", "r201", "r325" ], "lang": { "en-US": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "domainItemType" }, "srt_OwnershipAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Ownership [Axis]", "terseLabel": "Ownership [Axis]" } } }, "localname": "OwnershipAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "stringItemType" }, "srt_OwnershipDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Ownership [Domain]", "terseLabel": "Ownership [Domain]" } } }, "localname": "OwnershipDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r121", "r196", "r199", "r322", "r323" ], "lang": { "en-US": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Product and Service [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r123", "r196", "r200", "r324", "r327", "r329" ], "lang": { "en-US": { "role": { "label": "Geographical [Axis]", "terseLabel": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.", "label": "Accounts Payable and Accrued Liabilities, Current", "terseLabel": "Accounts payable and accrued liabilities", "totalLabel": "Accounts payable and accrued liabilities" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails", "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrentAndNoncurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Accounts Payable and Accrued Liabilities [Abstract]" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesCurrentAndNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r35" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for accounts payable and accrued liabilities at the end of the reporting period.", "label": "Accounts Payable and Accrued Liabilities Disclosure [Text Block]", "terseLabel": "ACCOUNTS PAYABLE AND ACCRUED LIABILITIES" } } }, "localname": "AccountsPayableAndAccruedLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsPayableAndOtherAccruedLiabilitiesCurrent": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails": { "order": 4.0, "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of liabilities incurred to vendors for goods and services received, and accrued liabilities classified as other, payable within one year or the normal operating cycle, if longer.", "label": "Accounts Payable and Other Accrued Liabilities, Current", "terseLabel": "Other liabilities" } } }, "localname": "AccountsPayableAndOtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableTradeCurrent": { "auth_ref": [ "r5", "r34" ], "calculation": { "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails": { "order": 1.0, "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "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).", "label": "Accounts Payable, Trade, Current", "terseLabel": "Trade payables" } } }, "localname": "AccountsPayableTradeCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]", "terseLabel": "Accounts Receivable" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r2", "r17", "r125", "r126", "r197" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedIncomeTaxesCurrent": { "auth_ref": [ "r11", "r300", "r313" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.", "label": "Accrued Income Taxes, Current", "terseLabel": "Income tax payable" } } }, "localname": "AccruedIncomeTaxesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r32", "r170" ], "calculation": { "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "terseLabel": "Accumulated depreciation" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r51", "r52", "r53" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r50", "r53", "r54", "r259" ], "lang": { "en-US": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]", "terseLabel": "Accumulated Other Comprehensive Loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "auth_ref": [ "r154" ], "lang": { "en-US": { "role": { "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.", "label": "Acquired Finite-lived Intangible Assets, Weighted Average Useful Life", "terseLabel": "Intangible assets weighted average useful life" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r18" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders. Includes adjustments to additional paid in capital. Some examples of such adjustments include recording the issuance of debt with a beneficial conversion feature and certain tax consequences of equity instruments awarded to employees. Use this element for the aggregate amount of additional paid-in capital associated with common and preferred stock. For additional paid-in capital associated with only common stock, use the element additional paid in capital, common stock. For additional paid-in capital associated with only preferred stock, use the element additional paid in capital, preferred stock.", "label": "Additional Paid in Capital", "terseLabel": "Additional paid-in-capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional Paid-in-Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AdvertisingCostsPolicyTextBlock": { "auth_ref": [ "r212" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for advertising cost.", "label": "Advertising Cost [Policy Text Block]", "terseLabel": "Advertising Costs" } } }, "localname": "AdvertisingCostsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_AdvertisingExpense": { "auth_ref": [ "r213" ], "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Advertising Expense", "terseLabel": "Advertising costs" } } }, "localname": "AdvertisingExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesAdvertisingCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r23", "r131", "r135" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, net of allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfDebtDiscountPremium": { "auth_ref": [ "r69", "r80", "r274" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of noncash expense included in interest expense to amortize debt discount and premium associated with the related debt instruments. Excludes amortization of financing costs. Alternate captions include noncash interest expense.", "label": "Amortization of Debt Discount (Premium)", "terseLabel": "Accretion on notes payable" } } }, "localname": "AmortizationOfDebtDiscountPremium", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r80", "r152", "r159" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Amortization of Intangible Assets", "terseLabel": "Amortization of intangible assets" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows", "http://www.xpel.com/role/IntangibleAssetsNetNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetImpairmentCharges": { "auth_ref": [ "r80", "r167" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.", "label": "Asset Impairment Charges", "terseLabel": "Impairment expense" } } }, "localname": "AssetImpairmentCharges", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r119", "r298", "r312" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets [Abstract]", "terseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r3", "r4", "r48" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r206", "r210" ], "lang": { "en-US": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]", "terseLabel": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of Presentation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]", "terseLabel": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r242", "r243" ], "lang": { "en-US": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]", "terseLabel": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Business Acquisition [Line Items]", "terseLabel": "Business Acquisition [Line Items]" } } }, "localname": "BusinessAcquisitionLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "auth_ref": [ "r241" ], "lang": { "en-US": { "role": { "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.", "label": "Business Acquisition, Percentage of Voting Interests Acquired", "terseLabel": "Percentage of business acquired" } } }, "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "auth_ref": [ "r247", "r248", "r249" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.", "label": "Business Combination, Consideration Transferred", "terseLabel": "Purchase price" } } }, "localname": "BusinessCombinationConsiderationTransferred1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationsPolicy": { "auth_ref": [ "r89", "r240" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy.", "label": "Business Combinations Policy [Policy Text Block]", "terseLabel": "Business Combinations" } } }, "localname": "BusinessCombinationsPolicy", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r0", "r29", "r82" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "auth_ref": [ "r7", "r83", "r89" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.", "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "terseLabel": "Cash and Cash Equivalents" } } }, "localname": "CashAndCashEquivalentsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r76", "r82", "r88" ], "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents at end of year", "periodStartLabel": "Cash and cash equivalents at beginning of year" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "auth_ref": [ "r76", "r270" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect", "totalLabel": "Net change in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r76", "r270" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Increase in cash and cash equivalents during the period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]", "terseLabel": "Supplemental schedule of non-cash activities" } } }, "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_ChangeInContractWithCustomerLiabilityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Change in Contract with Customer, Liability [Abstract]", "terseLabel": "Change in Contract with Customer, Liability [Abstract]" } } }, "localname": "ChangeInContractWithCustomerLiabilityAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r174", "r175" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "COMMITMENTS AND CONTINGENCIES" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/CommitmentsAndContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r16" ], "lang": { "en-US": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r16" ], "lang": { "en-US": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock shares authorized (in shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r16" ], "lang": { "en-US": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/CapitalStockNarrativeDetails", "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical", "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r16", "r185" ], "lang": { "en-US": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock shares outstanding (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/CapitalStockNarrativeDetails", "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r16" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "terseLabel": "Common stock, $0.001 par value; 100,000,000 shares authorized; 27,612,597 issued and outstanding", "verboseLabel": "Common stock value issued" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/CapitalStockNarrativeDetails", "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommonStockValueOutstanding": { "auth_ref": [ "r16" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Value of all classes of common stock held by shareholders. May be all or portion of the number of common shares authorized. These shares exclude common shares repurchased by the entity and held as treasury shares.", "label": "Common Stock, Value, Outstanding", "verboseLabel": "Common stock value outstanding" } } }, "localname": "CommonStockValueOutstanding", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/CapitalStockNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CompensationAndRetirementDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Retirement Benefits [Abstract]" } } }, "localname": "CompensationAndRetirementDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_ComponentsOfDeferredTaxAssetsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Components of Deferred Tax Assets [Abstract]", "terseLabel": "DEFERRED TAX ASSETS:" } } }, "localname": "ComponentsOfDeferredTaxAssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ComponentsOfDeferredTaxLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Components of Deferred Tax Liabilities [Abstract]", "terseLabel": "DEFERRED TAX LIABILITIES:" } } }, "localname": "ComponentsOfDeferredTaxLiabilitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r56", "r58", "r59" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Total comprehensive income attributable to stockholders of the company" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": { "auth_ref": [ "r56", "r58", "r254", "r255", "r263" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest", "terseLabel": "Total comprehensive income attributable to non-controlling interest" } } }, "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r56", "r58", "r253", "r263" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest", "totalLabel": "Total comprehensive income including portion attributable to non-controlling interest" } } }, "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomePolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for comprehensive income.", "label": "Comprehensive Income, Policy [Policy Text Block]", "terseLabel": "Accumulated Other Comprehensive Income (Loss) (AOCI)" } } }, "localname": "ComprehensiveIncomePolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ComputerEquipmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.", "label": "Computer Equipment [Member]", "terseLabel": "Computer equipment" } } }, "localname": "ComputerEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r112", "r113", "r265", "r266" ], "lang": { "en-US": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]", "terseLabel": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r112", "r113", "r265", "r266", "r326" ], "lang": { "en-US": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]", "terseLabel": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r112", "r113", "r265", "r266", "r326" ], "lang": { "en-US": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]", "terseLabel": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r112", "r113", "r265", "r266" ], "lang": { "en-US": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "Concentration Risk, Percentage", "terseLabel": "Concentration risk percentage" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r112", "r113", "r265", "r266" ], "lang": { "en-US": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.", "label": "Concentration Risk Type [Domain]", "terseLabel": "Concentration Risk Type [Domain]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConstructionInProgressMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.", "label": "Construction in Progress [Member]", "terseLabel": "Construction in Progress" } } }, "localname": "ConstructionInProgressMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r194" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of contract balances and changes in contract balances.", "label": "Contract with Customer, Asset and Liability [Table Text Block]", "terseLabel": "Schedule of Transactions Within Contract Liabilities" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r192", "r193", "r197" ], "calculation": { "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails": { "order": 3.0, "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "periodEndLabel": "Ending contract liabilities", "periodStartLabel": "Beginning contract liabilities", "terseLabel": "Contract liabilities" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails", "http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r198" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "negatedTerseLabel": "Revenue recognized related to payments in beginning balance" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r67" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Cost of Goods and Services Sold", "terseLabel": "Total cost of sales" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSoldAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Cost of Goods and Services Sold [Abstract]", "terseLabel": "Cost of Sales" } } }, "localname": "CostOfGoodsAndServicesSoldAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]", "terseLabel": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]", "terseLabel": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CurrentFederalTaxExpenseBenefit": { "auth_ref": [ "r93", "r232", "r236" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 1.0, "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current federal tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Current Federal Tax Expense (Benefit)", "terseLabel": "Federal" } } }, "localname": "CurrentFederalTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentForeignTaxExpenseBenefit": { "auth_ref": [ "r96", "r234" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 2.0, "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Current Foreign Tax Expense (Benefit)", "terseLabel": "Foreign" } } }, "localname": "CurrentForeignTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "auth_ref": [ "r93", "r232", "r236" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.", "label": "Current Income Tax Expense (Benefit)", "totalLabel": "Total Current Income Tax Expense" } } }, "localname": "CurrentIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Current Income Tax Expense (Benefit), Continuing Operations [Abstract]", "terseLabel": "Current Income Tax Expense" } } }, "localname": "CurrentIncomeTaxExpenseBenefitContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CurrentStateAndLocalTaxExpenseBenefit": { "auth_ref": [ "r93", "r232", "r236" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 3.0, "parentTag": "us-gaap_CurrentIncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current state and local tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Current State and Local Tax Expense (Benefit)", "terseLabel": "State" } } }, "localname": "CurrentStateAndLocalTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r111" ], "lang": { "en-US": { "role": { "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.", "label": "Customer Concentration Risk [Member]", "terseLabel": "Customer Concentration Risk" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r246" ], "lang": { "en-US": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer Relationships [Member]", "terseLabel": "Contractual and customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Debt Disclosure [Abstract]" } } }, "localname": "DebtDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r184" ], "lang": { "en-US": { "role": { "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.", "label": "Debt Disclosure [Text Block]", "terseLabel": "DEBT" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/Debt" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r10", "r11", "r12", "r299", "r302", "r311" ], "lang": { "en-US": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]", "terseLabel": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Basis spread on prime rate" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Debt Instrument [Line Items]", "terseLabel": "Debt Instrument [Line Items]" } } }, "localname": "DebtInstrumentLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r41" ], "lang": { "en-US": { "role": { "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.", "label": "Debt Instrument, Name [Domain]", "terseLabel": "Debt Instrument, Name [Domain]" } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentTable": { "auth_ref": [ "r41", "r94", "r186", "r187", "r188", "r189", "r274", "r275", "r277", "r309" ], "lang": { "en-US": { "role": { "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.", "label": "Schedule of Long-term Debt Instruments [Table]", "terseLabel": "Schedule of Long-term Debt Instruments [Table]" } } }, "localname": "DebtInstrumentTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtWeightedAverageInterestRate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Weighted average interest rate of debt outstanding.", "label": "Debt, Weighted Average Interest Rate", "terseLabel": "Weighted average interest rate (as a percent)" } } }, "localname": "DebtWeightedAverageInterestRate", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DeferredFederalIncomeTaxExpenseBenefit": { "auth_ref": [ "r93", "r233", "r236" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of deferred federal income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Federal Income Tax Expense (Benefit)", "terseLabel": "Federal" } } }, "localname": "DeferredFederalIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredForeignIncomeTaxExpenseBenefit": { "auth_ref": [ "r93", "r233", "r236" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredIncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of deferred foreign income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Foreign Income Tax Expense (Benefit)", "terseLabel": "Foreign" } } }, "localname": "DeferredForeignIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r80", "r93", "r233", "r236" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "totalLabel": "Total Deferred Income Tax Expense/(Benefit)" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Deferred Income Tax Expense (Benefit), Continuing Operations [Abstract]", "terseLabel": "Deferred Income Tax Expense/(Benefit)" } } }, "localname": "DeferredIncomeTaxExpenseBenefitContinuingOperationsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredIncomeTaxLiabilities": { "auth_ref": [ "r13", "r14", "r225", "r301", "r310" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredTaxLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of deferred tax liability attributable to taxable temporary differences.", "label": "Deferred Tax Liabilities, Gross", "totalLabel": "Total deferred tax liabilities" } } }, "localname": "DeferredIncomeTaxLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r220", "r227" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "Deferred Income Tax Liabilities, Net", "terseLabel": "Deferred tax liability, net" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "auth_ref": [ "r81" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.", "label": "Deferred Income Taxes and Tax Credits", "terseLabel": "Deferred income tax" } } }, "localname": "DeferredIncomeTaxesAndTaxCredits", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsGross": { "auth_ref": [ "r226" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredTaxLiabilities", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards.", "label": "Deferred Tax Assets, Gross", "totalLabel": "Total deferred tax assets" } } }, "localname": "DeferredTaxAssetsGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsOperatingLossCarryforwards": { "auth_ref": [ "r215", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 8.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards.", "label": "Deferred Tax Assets, Operating Loss Carryforwards", "terseLabel": "NOL Carryforward and Other" } } }, "localname": "DeferredTaxAssetsOperatingLossCarryforwards", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsTaxCreditCarryforwards": { "auth_ref": [ "r229", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 7.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, before allocation of a valuation allowances, of deferred tax assets attributable to deductible tax credit carryforwards including, but not limited to, research, foreign, general business, alternative minimum tax, and other deductible tax credit carryforwards.", "label": "Deferred Tax Assets, Tax Credit Carryforwards", "terseLabel": "State Tax Credit" } } }, "localname": "DeferredTaxAssetsTaxCreditCarryforwards", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": { "auth_ref": [ "r215", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.", "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities", "terseLabel": "Accrued Expenses" } } }, "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": { "auth_ref": [ "r215", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from the allowance for doubtful accounts.", "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Allowance for Doubtful Accounts", "terseLabel": "Allowance for Doubtful Accounts" } } }, "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves": { "auth_ref": [ "r215", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences from reserves, classified as other.", "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Reserves", "terseLabel": "Inventory Reserve" } } }, "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsReserves", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxAssetsUnrealizedCurrencyLosses": { "auth_ref": [ "r216", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from unrealized losses on foreign currency transactions.", "label": "Deferred Tax Assets, Unrealized Currency Losses", "terseLabel": "Unrealized loss" } } }, "localname": "DeferredTaxAssetsUnrealizedCurrencyLosses", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxLiabilities": { "auth_ref": [ "r220", "r227" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.", "label": "Deferred Tax Liabilities, Net", "negatedTotalLabel": "Total net deferred tax liabilities" } } }, "localname": "DeferredTaxLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains": { "auth_ref": [ "r217", "r230", "r231" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from unrealized gains on foreign currency transactions.", "label": "Deferred Tax Liabilities, Unrealized Currency Transaction Gains", "terseLabel": "Unrealized Gain" } } }, "localname": "DeferredTaxLiabilitiesUnrealizedCurrencyTransactionGains", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedContributionPlanCostRecognized": { "auth_ref": [ "r203" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cost for defined contribution plan.", "label": "Defined Contribution Plan, Cost", "terseLabel": "Contribution expense" } } }, "localname": "DefinedContributionPlanCostRecognized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/EmployeeBenefitPlanNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r80", "r168" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.", "label": "Depreciation", "terseLabel": "Depreciation of property, plant and equipment", "verboseLabel": "Depreciation expense" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows", "http://www.xpel.com/role/PropertyAndEquipmentNetNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenue [Line Items]" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails", "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]", "terseLabel": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails", "http://www.xpel.com/role/RevenueNarrativeDetails", "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r196" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Disaggregation of Revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r211" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-based Payment Arrangement [Text Block]", "terseLabel": "STOCK OPTIONS" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptions" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Share-based Payment Arrangement [Abstract]" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasicAndDiluted": { "auth_ref": [ "r102" ], "lang": { "en-US": { "role": { "documentation": "The amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements. Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period. Diluted earnings per share includes the amount of net income or loss for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Basic and Diluted", "terseLabel": "Earnings per share basic and diluted (in dollars per share)" } } }, "localname": "EarningsPerShareBasicAndDiluted", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareBasicAndDilutedAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Earnings Per Share, Basic and Diluted [Abstract]", "terseLabel": "Earnings per share attributable stockholders of the Company" } } }, "localname": "EarningsPerShareBasicAndDilutedAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasicAndDilutedOtherDisclosuresAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Earnings Per Share, Basic and Diluted, Other Disclosures [Abstract]", "terseLabel": "Weighted Average Number of Common Shares" } } }, "localname": "EarningsPerShareBasicAndDilutedOtherDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerSharePolicyTextBlock": { "auth_ref": [ "r89", "r103", "r104", "r105" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.", "label": "Earnings Per Share, Policy [Policy Text Block]", "terseLabel": "Earnings Per Share" } } }, "localname": "EarningsPerSharePolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r270" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "terseLabel": "Foreign exchange impact on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r221", "r222", "r235" ], "lang": { "en-US": { "role": { "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss).", "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "terseLabel": "Statutory rate" } } }, "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r39" ], "calculation": { "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails": { "order": 2.0, "parentTag": "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Employee-related Liabilities, Current", "terseLabel": "Payroll liabilities" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesScheduleOfAccountsPayableAndAccruedLiabilityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [ "r209" ], "lang": { "en-US": { "role": { "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.", "label": "Share-based Payment Arrangement, Option [Member]", "terseLabel": "Option" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquipmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tangible personal property used to produce goods and services.", "label": "Equipment [Member]", "terseLabel": "Equipment" } } }, "localname": "EquipmentMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Equity [Abstract]" } } }, "localname": "EquityAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r185" ], "lang": { "en-US": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]", "terseLabel": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueDisclosuresAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Fair Value Disclosures [Abstract]" } } }, "localname": "FairValueDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r264" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "Fair Value Disclosures [Text Block]", "terseLabel": "FAIR VALUE MEASUREMENTS" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities.", "label": "Fair Value Measurement, Policy [Policy Text Block]", "terseLabel": "Fair Value Measurements" } } }, "localname": "FairValueMeasurementPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Finite-Lived Intangible Asset, Useful Life", "terseLabel": "Intangible asset useful life" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r158" ], "calculation": { "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails": { "order": 2.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "terseLabel": "Accumulated amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, after Year Five", "terseLabel": "Thereafter" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "auth_ref": [ "r160" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Next Twelve Months", "terseLabel": "2020" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "auth_ref": [ "r160" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Five", "terseLabel": "2024" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "auth_ref": [ "r160" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Four", "terseLabel": "2023" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "auth_ref": [ "r160" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Three", "terseLabel": "2022" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "auth_ref": [ "r160" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense for assets, excluding financial assets and goodwill, lacking physical substance with a finite life expected to be recognized during the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Finite-Lived Intangible Assets, Amortization Expense, Year Two", "terseLabel": "2021" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfFutureAmortizationExpenseOfFiniteLivedIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r153", "r155", "r158", "r161", "r296" ], "lang": { "en-US": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r158", "r296" ], "calculation": { "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails": { "order": 1.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Intangible assets, gross" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets [Line Items]" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r153", "r157" ], "lang": { "en-US": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r158" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Net", "terseLabel": "Intangible assets, net", "totalLabel": "Intangible assets, net" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "auth_ref": [ "r267", "r268", "r269" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount before tax of foreign currency transaction realized and unrealized gain (loss) recognized in the income statement.", "label": "Foreign Currency Transaction Gain (Loss), before Tax", "negatedTerseLabel": "Foreign currency exchange loss" } } }, "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": { "auth_ref": [ "r89", "r269", "r272" ], "lang": { "en-US": { "role": { "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.", "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]", "terseLabel": "Foreign Currency Translation" } } }, "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_FurnitureAndFixturesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "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.", "label": "Furniture and Fixtures [Member]", "terseLabel": "Furniture and fixtures" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r80" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.", "label": "Gain (Loss) on Disposition of Property Plant Equipment", "negatedTerseLabel": "(Gain) loss on sale of property and equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeneralAndAdministrativeExpense": { "auth_ref": [ "r68" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.", "label": "General and Administrative Expense", "terseLabel": "General and administrative" } } }, "localname": "GeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r142", "r144" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "periodEndLabel": "Goodwill ending balance", "periodStartLabel": "Goodwill beginning balance", "terseLabel": "Goodwill", "verboseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAcquiredDuringPeriod": { "auth_ref": [ "r145" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.", "label": "Goodwill, Acquired During Period", "terseLabel": "Additions" } } }, "localname": "GoodwillAcquiredDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "auth_ref": [ "r89", "r148" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.", "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]", "terseLabel": "Goodwill" } } }, "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillAndIntangibleAssetsIntangibleAssetsPolicy": { "auth_ref": [ "r89", "r156" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for intangible assets. This accounting policy may address both intangible assets subject to amortization and those that are not. The following also may be disclosed: (1) a description of intangible assets (2) the estimated useful lives of those assets (3) the amortization method used (4) how the entity assesses and measures impairment of such assets (5) how future cash flows are estimated (6) how the fair values of such asset are determined.", "label": "Goodwill and Intangible Assets, Intangible Assets, Policy [Policy Text Block]", "terseLabel": "Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsIntangibleAssetsPolicy", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillDisclosureTextBlock": { "auth_ref": [ "r151" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for goodwill.", "label": "Goodwill Disclosure [Text Block]", "terseLabel": "GOODWILL" } } }, "localname": "GoodwillDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/Goodwill" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r147" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "terseLabel": "Foreign currency translation" } } }, "localname": "GoodwillForeignCurrencyTranslationGainLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillImpairmentLoss": { "auth_ref": [ "r80", "r143", "r146", "r149" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill, Impairment Loss", "negatedTerseLabel": "Impairment", "terseLabel": "Goodwill impairment loss" } } }, "localname": "GoodwillImpairmentLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/GoodwillNarrativeDetails", "http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Goodwill [Line Items]", "terseLabel": "Goodwill [Line Items]" } } }, "localname": "GoodwillLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GoodwillRollForward": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Goodwill [Roll Forward]", "terseLabel": "Goodwill [Roll Forward]" } } }, "localname": "GoodwillRollForward", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/GoodwillScheduleOfGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r65" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "totalLabel": "Gross Margin" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ImpairmentOfIntangibleAssetsFinitelived": { "auth_ref": [ "r80", "r162" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The amount of impairment loss recognized in the period resulting from the write-down of the carrying amount of a finite-lived intangible asset to fair value.", "label": "Impairment of Intangible Assets, Finite-lived", "terseLabel": "Impairment of intangible assets, excluding goodwill" } } }, "localname": "ImpairmentOfIntangibleAssetsFinitelived", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetNarrativeDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesImpairmentOfLongLivedAssetsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": { "auth_ref": [ "r89", "r166", "r172" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.", "label": "Impairment or Disposal of Long-Lived Assets, Policy [Policy Text Block]", "terseLabel": "Impairment of Long-Lived Assets" } } }, "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": { "auth_ref": [ "r95" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic", "terseLabel": "Domestic" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r62", "r101", "r297", "r306", "r321" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_ProfitLoss", "weight": 1.0 }, "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income before income taxes", "verboseLabel": "Income before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails", "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": { "auth_ref": [ "r95" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign", "terseLabel": "International" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeBeforeIncomeTaxDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r239" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "terseLabel": "INCOME TAXES" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r93", "r118", "r237" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_ProfitLoss", "weight": -1.0 }, "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "terseLabel": "Income tax expense", "totalLabel": "Income tax expense" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/IncomeTaxesComponentsOfIncomeTaxProvisionBenefitDetails", "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxPolicyTextBlock": { "auth_ref": [ "r60", "r89", "r218", "r219", "r223", "r224", "r228", "r238", "r328" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.", "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income Taxes" } } }, "localname": "IncomeTaxPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": { "auth_ref": [ "r91", "r221", "r222" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 4.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount 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 foreign income tax expense (benefit).", "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount", "terseLabel": "Foreign tax rate differential" } } }, "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": { "auth_ref": [ "r92", "r221", "r222" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.", "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount", "terseLabel": "Income statutory rate amount" } } }, "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationNondeductibleExpense": { "auth_ref": [ "r221", "r222" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 3.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount 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 nondeductible expenses.", "label": "Effective Income Tax Rate Reconciliation, Nondeductible Expense, Amount", "terseLabel": "Nondeductible/nontaxable items" } } }, "localname": "IncomeTaxReconciliationNondeductibleExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationOtherAdjustments": { "auth_ref": [ "r221" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 7.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.", "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount", "terseLabel": "Other - net" } } }, "localname": "IncomeTaxReconciliationOtherAdjustments", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "auth_ref": [ "r92", "r221", "r222" ], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount 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 state and local income tax expense (benefit).", "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount", "terseLabel": "State taxes net of federal benefit" } } }, "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r84" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income Taxes Paid, Net", "terseLabel": "Cash paid for income taxes" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesReceivable": { "auth_ref": [ "r43", "r305", "r319" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Income Taxes Receivable, Current", "terseLabel": "Income tax receivable" } } }, "localname": "IncomeTaxesReceivable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": { "auth_ref": [ "r79" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.", "label": "Increase (Decrease) in Accounts Payable and Accrued Liabilities", "terseLabel": "Accounts payable and accrued liabilities" } } }, "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r79" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedTerseLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "auth_ref": [ "r79" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.", "label": "Increase (Decrease) in Income Taxes Payable", "terseLabel": "Income tax payable" } } }, "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInIncomeTaxesReceivable": { "auth_ref": [ "r79" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in income taxes receivable, which represents the amount due from tax authorities for refunds of overpayments or recoveries of income taxes paid.", "label": "Increase (Decrease) in Income Taxes Receivable", "negatedTerseLabel": "Income tax receivable" } } }, "localname": "IncreaseDecreaseInIncomeTaxesReceivable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r79" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Inventories", "negatedTerseLabel": "Inventory, net" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in current assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r79" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedTerseLabel": "Prepaid expenses and other current assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r165" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for all or part of the information related to intangible assets.", "label": "Intangible Assets Disclosure [Text Block]", "terseLabel": "INTANGIBLE ASSETS, NET" } } }, "localname": "IntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNet" ], "xbrltype": "textBlockItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r61", "r117", "r273", "r276", "r308" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest Expense", "terseLabel": "Interest expense" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r74", "r77", "r84" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "terseLabel": "Cash paid for interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Inventory Disclosure [Abstract]" } } }, "localname": "InventoryDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r141" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.", "label": "Inventory Disclosure [Text Block]", "terseLabel": "INVENTORIES" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/Inventories" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r1", "r46", "r137" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Net", "terseLabel": "Inventory, net", "totalLabel": "Inventory, net" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryPolicyTextBlock": { "auth_ref": [ "r6", "r47", "r89", "r106", "r138", "r139" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.", "label": "Inventory, Policy [Policy Text Block]", "terseLabel": "Inventory" } } }, "localname": "InventoryPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryValuationReserves": { "auth_ref": [ "r46", "r99", "r137", "r140" ], "calculation": { "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails": { "order": 4.0, "parentTag": "us-gaap_InventoryNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of valuation reserve for inventory.", "label": "Inventory Valuation Reserves", "negatedTerseLabel": "Inventory reserve" } } }, "localname": "InventoryValuationReserves", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseAndRentalExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of rent expense incurred for leased assets, including but not limited to, furniture and equipment, that is not directly or indirectly associated with the manufacture, sale or creation of a product or product line.", "label": "Operating Leases, Rent Expense", "terseLabel": "Operating lease rent expense" } } }, "localname": "LeaseAndRentalExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r290" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.", "label": "Lease, Cost [Table Text Block]", "terseLabel": "Schedule of Weighted Average Remaining Lease Term and Discount Rate Information" } } }, "localname": "LeaseCostTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r169" ], "lang": { "en-US": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]", "terseLabel": "Leasehold improvements" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LeasesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Leases [Abstract]" } } }, "localname": "LeasesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r291" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "terseLabel": "Schedule of Maturities of Operating Lease Liabilities" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetailsCalc2": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total operating lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five", "terseLabel": "Thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months", "terseLabel": "2020" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Five", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2021" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r291" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetailsCalc2": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedTerseLabel": "Less: interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeasesTextBlock": { "auth_ref": [ "r293" ], "lang": { "en-US": { "role": { "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.", "label": "Lessee, Operating Leases [Text Block]", "terseLabel": "LEASES" } } }, "localname": "LesseeOperatingLeasesTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/Leases" ], "xbrltype": "textBlockItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r38" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities [Abstract]", "terseLabel": "Liabilities" } } }, "localname": "LiabilitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r22", "r304", "r317" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities and stockholders\u2019 equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r40" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r12", "r302", "r311" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.", "label": "Long-term Line of Credit", "terseLabel": "Amount outstanding" } } }, "localname": "LineOfCredit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityAxis": { "auth_ref": [ "r36", "r94" ], "lang": { "en-US": { "role": { "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.", "label": "Lender Name [Axis]", "terseLabel": "Lender Name [Axis]" } } }, "localname": "LineOfCreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityInterestRateAtPeriodEnd": { "auth_ref": [ "r36" ], "lang": { "en-US": { "role": { "documentation": "The effective interest rate at the end of the reporting period.", "label": "Line of Credit Facility, Interest Rate at Period End", "terseLabel": "Line of credit facility interest rate" } } }, "localname": "LineOfCreditFacilityInterestRateAtPeriodEnd", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "percentItemType" }, "us-gaap_LineOfCreditFacilityLenderDomain": { "auth_ref": [ "r36" ], "lang": { "en-US": { "role": { "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.", "label": "Line of Credit Facility, Lender [Domain]", "terseLabel": "Line of Credit Facility, Lender [Domain]" } } }, "localname": "LineOfCreditFacilityLenderDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Line of Credit Facility [Line Items]", "terseLabel": "Line of Credit Facility [Line Items]" } } }, "localname": "LineOfCreditFacilityLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r36" ], "crdr": "credit", "lang": { "en-US": { "role": { "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.", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "terseLabel": "Maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r36", "r94" ], "lang": { "en-US": { "role": { "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.", "label": "Line of Credit Facility [Table]", "terseLabel": "Line of Credit Facility [Table]" } } }, "localname": "LineOfCreditFacilityTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars.", "label": "Line of Credit [Member]", "terseLabel": "Line of Credit" } } }, "localname": "LineOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r12", "r183", "r302", "r314" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Long-term Debt", "totalLabel": "Long-term Debt" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive": { "auth_ref": [ "r98", "r181" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": 6.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Long-term Debt, Maturities, Repayments of Principal after Year Five", "terseLabel": "Thereafter" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "auth_ref": [ "r98", "r181" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Long-term Debt, Maturities, Repayments of Principal in Next Twelve Months", "terseLabel": "2020" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive": { "auth_ref": [ "r98", "r181" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": 5.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Long-term Debt, Maturities, Repayments of Principal in Year Five", "terseLabel": "2024" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "auth_ref": [ "r98", "r181" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": 4.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Long-term Debt, Maturities, Repayments of Principal in Year Four", "terseLabel": "2023" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "auth_ref": [ "r98", "r181" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": 3.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Long-term Debt, Maturities, Repayments of Principal in Year Three", "terseLabel": "2022" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "auth_ref": [ "r98", "r181" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of long-term debt payable, sinking fund requirements, and other securities issued that are redeemable by holder at fixed or determinable prices and dates maturing in the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Long-term Debt, Maturities, Repayments of Principal in Year Two", "terseLabel": "2021" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfDebtMaturitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermNotesPayable": { "auth_ref": [ "r41" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails": { "order": 2.0, "parentTag": "us-gaap_NotesPayable", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of notes payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.", "label": "Notes Payable, Noncurrent", "terseLabel": "Non-current portion of notes payable", "verboseLabel": "Total long-term debt" } } }, "localname": "LongTermNotesPayable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongtermDebtTypeAxis": { "auth_ref": [ "r41" ], "lang": { "en-US": { "role": { "documentation": "Information by type of long-term debt.", "label": "Long-term Debt, Type [Axis]", "terseLabel": "Long-term Debt, Type [Axis]" } } }, "localname": "LongtermDebtTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r41", "r182" ], "lang": { "en-US": { "role": { "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. 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.", "label": "Long-term Debt, Type [Domain]", "terseLabel": "Long-term Debt, Type [Domain]" } } }, "localname": "LongtermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MinorityInterest": { "auth_ref": [ "r44", "r303", "r316" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).", "label": "Stockholders' Equity Attributable to Noncontrolling Interest", "terseLabel": "Non-controlling interest" } } }, "localname": "MinorityInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_MinorityInterestLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Noncontrolling Interest [Line Items]", "terseLabel": "Noncontrolling Interest [Line Items]" } } }, "localname": "MinorityInterestLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MinorityInterestOwnershipPercentageByParent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage.", "label": "Noncontrolling Interest, Ownership Percentage by Parent", "terseLabel": "Ownership percentage" } } }, "localname": "MinorityInterestOwnershipPercentageByParent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_MinorityInterestTable": { "auth_ref": [ "r44", "r66", "r252", "r260" ], "lang": { "en-US": { "role": { "documentation": "Schedule of noncontrolling interest disclosure which includes the name of the subsidiary, the ownership percentage held by the parent, the ownership percentage held by the noncontrolling owners, the amount of the noncontrolling interest, the location of this amount on the balance sheet (when not reported separately), an explanation of the increase or decrease in the amount of the noncontrolling interest, the noncontrolling interest share of the net Income or Loss of the subsidiary, the location of this amount on the income statement (when not reported separately), the nature of the noncontrolling interest such as background information and terms, the amount of the noncontrolling interest represented by preferred stock, a description of the preferred stock, and the dividend requirements of the preferred stock.", "label": "Noncontrolling Interest [Table]", "terseLabel": "Noncontrolling Interest [Table]" } } }, "localname": "MinorityInterestTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_MovementInStandardProductWarrantyAccrualRollForward": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Movement in Standard Product Warranty Accrual [Roll Forward]", "terseLabel": "Movement in Standard Product Warranty Accrual [Roll Forward]" } } }, "localname": "MovementInStandardProductWarrantyAccrualRollForward", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesProvisionsAndWarrantiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r76" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash used in financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "Cash flows from financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r76" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "Cash flows used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r76", "r78", "r81" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Cash flows from operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r55", "r57", "r63", "r81", "r104", "r307", "r320" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "totalLabel": "Net income attributable to stockholders of the Company" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": { "auth_ref": [ "r55", "r57", "r257", "r262" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest.", "label": "Net Income (Loss) Attributable to Noncontrolling Interest", "terseLabel": "Income attributed to non-controlling interest" } } }, "localname": "NetIncomeLossAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recently Adopted Accounting Pronouncements and Recent Accounting Pronouncements Issued and Not Yet Adopted" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r245" ], "lang": { "en-US": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]", "terseLabel": "Non-compete" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncontrollingInterestMember": { "auth_ref": [ "r251" ], "lang": { "en-US": { "role": { "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest.", "label": "Noncontrolling Interest [Member]", "terseLabel": "Non-Controlling Interest" } } }, "localname": "NoncontrollingInterestMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_NotesIssued1": { "auth_ref": [ "r85", "r86", "r87" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The fair value of notes issued in noncash investing and financing activities.", "label": "Notes Issued", "terseLabel": "Notes payable issued for acquisitions" } } }, "localname": "NotesIssued1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NotesPayable": { "auth_ref": [ "r12", "r302", "r314" ], "calculation": { "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Including the current and noncurrent portions, aggregate carrying amount of all types of notes payable, as of the balance sheet date, with initial maturities beyond one year or beyond the normal operating cycle, if longer.", "label": "Notes Payable", "totalLabel": "Total debt" } } }, "localname": "NotesPayable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NotesPayableCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails": { "order": 1.0, "parentTag": "us-gaap_NotesPayable", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying values as of the balance sheet date of the portions of long-term notes payable due within one year or the operating cycle if longer.", "label": "Notes Payable, Current", "terseLabel": "Current portion of notes payable", "verboseLabel": "Current portion" } } }, "localname": "NotesPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [], "lang": { "en-US": { "role": { "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.", "label": "Number of Operating Segments", "terseLabel": "Number of operating segments" } } }, "localname": "NumberOfOperatingSegments", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesSegmentReportingDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.", "label": "Operating Expenses", "totalLabel": "Total operating expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "Operating Expenses" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Operating Income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseExpense": { "auth_ref": [ "r283" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of operating lease expense. Excludes sublease income.", "label": "Operating Lease, Expense", "terseLabel": "Operating lease expense" } } }, "localname": "OperatingLeaseExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r282" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetailsCalc2": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Operating Lease, Liability", "terseLabel": "Total operating lease liabilities", "totalLabel": "Total operating lease liabilities" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails", "http://www.xpel.com/role/LeasesScheduleOfMaturitiesOfOperatingLeaseLiabilitiesDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesRecentlyAdoptedAccountingPronouncementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r282" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "terseLabel": "Current portion lease liabilities", "verboseLabel": "Current portion of operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r282" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Non-current portion of lease liabilities", "verboseLabel": "Noncurrent portion of operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r284", "r287" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.", "label": "Operating Lease, Payments", "terseLabel": "Operating lease payment" } } }, "localname": "OperatingLeasePayments", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r281" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Right-of-Use lease assets", "verboseLabel": "Operating lease right-of-use assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/LeasesScheduleOfBalanceSheetInformationRelatedToLeasesDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesRecentlyAdoptedAccountingPronouncementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r289", "r292" ], "lang": { "en-US": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Weighted-average discount rate" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfWeightedAverageRemainingLeaseTermAndDiscountRateInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r288", "r292" ], "lang": { "en-US": { "role": { "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Weighted-average remaining lease term (in years)" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfWeightedAverageRemainingLeaseTermAndDiscountRateInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDue": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for leases having an initial or remaining non-cancelable letter-terms in excess of one year.", "label": "Operating Leases, Future Minimum Payments Due", "totalLabel": "Total operating leases future minimum payments due" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueCurrent": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": 1.0, "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the next fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Operating Leases, Future Minimum Payments Due, Next Twelve Months", "terseLabel": "2019" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFiveYears": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": 5.0, "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Operating Leases, Future Minimum Payments, Due in Five Years", "terseLabel": "2023" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueInFiveYears", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInFourYears": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": 4.0, "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the fourth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Operating Leases, Future Minimum Payments, Due in Four Years", "terseLabel": "2022" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueInFourYears", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInThreeYears": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": 3.0, "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the third fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Operating Leases, Future Minimum Payments, Due in Three Years", "terseLabel": "2021" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueInThreeYears", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueInTwoYears": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": 2.0, "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due in the second fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Operating Leases, Future Minimum Payments, Due in Two Years", "terseLabel": "2020" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueInTwoYears", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueThereafter": { "auth_ref": [ "r278", "r279" ], "calculation": { "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails": { "order": 6.0, "parentTag": "us-gaap_OperatingLeasesFutureMinimumPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of required minimum rental payments for operating leases having an initial or remaining non-cancelable lease term in excess of one year due after the fifth fiscal year following the latest fiscal year. Excludes interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.", "label": "Operating Leases, Future Minimum Payments, Due Thereafter", "terseLabel": "Thereafter" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueThereafter", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesScheduleOfFutureMinimumLeasePaymentsUnderNonCancelableOperatingLeasesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLossCarryforwards": { "auth_ref": [ "r229" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of operating loss carryforward, before tax effects, available to reduce future taxable income under enacted tax laws.", "label": "Operating Loss Carryforwards", "terseLabel": "Operating loss carryforwards" } } }, "localname": "OperatingLossCarryforwards", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r49", "r271" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "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.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity", "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]", "terseLabel": "Other comprehensive income" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome" ], "xbrltype": "stringItemType" }, "us-gaap_OtherIntangibleAssetsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Intangible assets classified as other.", "label": "Other Intangible Assets [Member]", "terseLabel": "Other" } } }, "localname": "OtherIntangibleAssetsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OtherInventory": { "auth_ref": [ "r46" ], "calculation": { "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before valuation and LIFO reserves of other inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Other Inventory, Gross", "terseLabel": "Other products" } } }, "localname": "OtherInventory", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherInventorySupplies": { "auth_ref": [ "r45" ], "calculation": { "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails": { "order": 3.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before valuation and LIFO reserves of other supplies used within the manufacturing or production process expected to be consumed within one year or operating cycle, if longer.", "label": "Other Inventory, Supplies, Gross", "terseLabel": "Packaging and supplies" } } }, "localname": "OtherInventorySupplies", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ParentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Portion of equity, or net assets, in the consolidated entity attributable, directly or indirectly, to the parent. Excludes noncontrolling interests.", "label": "Parent [Member]", "terseLabel": "Equity attributable to Stockholders of the Company" } } }, "localname": "ParentMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsToAcquireBusinessesGross": { "auth_ref": [ "r71", "r250" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.", "label": "Payments to Acquire Businesses, Gross", "terseLabel": "Cash" } } }, "localname": "PaymentsToAcquireBusinessesGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r71" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedTerseLabel": "Acquisitions, net of cash acquired and notes payable" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireIntangibleAssets": { "auth_ref": [ "r72" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.", "label": "Payments to Acquire Intangible Assets", "negatedTerseLabel": "Development or purchase of intangible assets" } } }, "localname": "PaymentsToAcquireIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r72" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedTerseLabel": "Purchase of property, plant and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "auth_ref": [ "r204" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for pension and other postretirement benefits.", "label": "Pension and Other Postretirement Benefits Disclosure [Text Block]", "terseLabel": "EMPLOYEE BENEFIT PLAN" } } }, "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/EmployeeBenefitPlan" ], "xbrltype": "textBlockItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value (in dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock shares authorized (in shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock shares issued (in shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock shares outstanding (in shares)" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r15" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, $0.001 par value; authorized 10,000,000; none issued and outstanding" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r3", "r27", "r28" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrimeRateMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.", "label": "Prime Rate [Member]", "terseLabel": "Prime Rate" } } }, "localname": "PrimeRateMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromRepaymentsOfLinesOfCredit": { "auth_ref": [ "r97" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The net cash inflow or cash outflow from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with either short term or long term maturity that is collateralized (backed by pledge, mortgage or other lien in the entity's assets).", "label": "Proceeds from (Repayments of) Lines of Credit", "terseLabel": "Net repayments on revolving credit agreement" } } }, "localname": "ProceedsFromRepaymentsOfLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r70" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.", "label": "Proceeds from Sale of Property, Plant, and Equipment", "terseLabel": "Proceeds from sale of property and equipment" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductMember": { "auth_ref": [ "r199" ], "lang": { "en-US": { "role": { "documentation": "Article or substance produced by nature, labor or machinery.", "label": "Product [Member]", "terseLabel": "Product revenue" } } }, "localname": "ProductMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProductWarrantyAccrualPayments": { "auth_ref": [ "r176" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.", "label": "Standard and Extended Product Warranty Accrual, Decrease for Payments", "negatedTerseLabel": "Payments" } } }, "localname": "ProductWarrantyAccrualPayments", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesProvisionsAndWarrantiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "auth_ref": [ "r177" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.", "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued", "terseLabel": "Warranties assumed in period" } } }, "localname": "ProductWarrantyAccrualWarrantiesIssued", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesProvisionsAndWarrantiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r55", "r57", "r75", "r119", "r120", "r253", "r256", "r258", "r262", "r263" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 }, "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net income", "totalLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows", "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity", "http://www.xpel.com/role/ConsolidatedStatementsOfComprehensiveIncome", "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Property, Plant and Equipment [Abstract]" } } }, "localname": "PropertyPlantAndEquipmentAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r32", "r171" ], "lang": { "en-US": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Property, Plant and Equipment, Type [Axis]", "terseLabel": "Property, Plant and Equipment, Type [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "auth_ref": [ "r173" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, accounting policies and methodology, roll forwards, depreciation, depletion and amortization expense, including composite depreciation, accumulated depreciation, depletion and amortization expense, useful lives and method used, income statement disclosures, assets held for sale and public utility disclosures.", "label": "Property, Plant and Equipment Disclosure [Text Block]", "terseLabel": "PROPERTY AND EQUIPMENT, NET" } } }, "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNet" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r31", "r169" ], "calculation": { "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Gross", "terseLabel": "Property, plant and equipment" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, Plant and Equipment [Line Items]" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r8", "r9", "r171", "r318" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "terseLabel": "Property and equipment, net", "totalLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": { "auth_ref": [ "r30", "r89", "r171" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for long-lived, physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, basis of assets, depreciation and depletion methods used, including composite deprecation, estimated useful lives, capitalization policy, accounting treatment for costs incurred for repairs and maintenance, capitalized interest and the method it is calculated, disposals and impairments.", "label": "Property, Plant and Equipment, Policy [Policy Text Block]", "terseLabel": "Property, Plant and Equipment" } } }, "localname": "PropertyPlantAndEquipmentPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r8", "r171" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedules of Property, Plant and Equipment" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetTables", "http://www.xpel.com/role/SignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r8", "r169" ], "lang": { "en-US": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Property, Plant and Equipment, Type [Domain]", "terseLabel": "Property, Plant and Equipment, Type [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.", "label": "Property, Plant and Equipment, Useful Life", "terseLabel": "Property, plant and equipment useful life" } } }, "localname": "PropertyPlantAndEquipmentUsefulLife", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r64", "r136" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "terseLabel": "Bad debt expense" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfBankDebt": { "auth_ref": [ "r73" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow to settle a bank borrowing during the year.", "label": "Repayments of Bank Debt", "negatedTerseLabel": "Repayment of bank loan payable" } } }, "localname": "RepaymentsOfBankDebt", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfNotesPayable": { "auth_ref": [ "r73" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation.", "label": "Repayments of Notes Payable", "negatedTerseLabel": "Repayments of notes payable" } } }, "localname": "RepaymentsOfNotesPayable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r214", "r330" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.", "label": "Research and Development Expense", "terseLabel": "Research and development expense" } } }, "localname": "ResearchAndDevelopmentExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesResearchAndDevelopmentDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchDevelopmentAndComputerSoftwarePolicyTextBlock": { "auth_ref": [ "r33", "r89", "r163", "r164", "r330" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for its research and development and computer software activities including the accounting treatment for costs incurred for (1) research and development activities, (2) development of computer software for internal use, (3) computer software to be sold, leased or otherwise marketed as a separate product or as part of a product or process and (4) in-process research and development acquired in a purchase business combination.", "label": "Research, Development, and Computer Software, Policy [Policy Text Block]", "terseLabel": "Research and Development" } } }, "localname": "ResearchDevelopmentAndComputerSoftwarePolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r19", "r190", "r315" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Revenue from Contract with Customer [Abstract]", "terseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r195", "r196" ], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "terseLabel": "Total revenue" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails", "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerMember": { "auth_ref": [ "r112" ], "lang": { "en-US": { "role": { "documentation": "Revenue from satisfaction of performance obligation by transferring promised product and service to customer, when it serves as benchmark in concentration of risk calculation.", "label": "Revenue from Contract with Customer Benchmark [Member]", "terseLabel": "Revenue from Contract with Customer Benchmark" } } }, "localname": "RevenueFromContractWithCustomerMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerPolicyTextBlock": { "auth_ref": [ "r90", "r202" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for revenue from contract with customer.", "label": "Revenue from Contract with Customer [Policy Text Block]", "terseLabel": "Revenue Recognition" } } }, "localname": "RevenueFromContractWithCustomerPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r202" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "REVENUE" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/Revenue" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "auth_ref": [ "r122" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue.", "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "terseLabel": "Revenue Estimate by Geographic Areas" } } }, "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]", "terseLabel": "Revolving Credit Facility" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the (a) carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business (accounts payable); (b) other payables; and (c) accrued liabilities. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer). An alternative caption includes accrued expenses.", "label": "Schedule of Accounts Payable and Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of Accounts Payable and Accrued Liabilities" } } }, "localname": "ScheduleOfAccountsPayableAndAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/AccountsPayableAndAccruedLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTable": { "auth_ref": [ "r242", "r243" ], "lang": { "en-US": { "role": { "documentation": "Schedule reflecting each material business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities.", "label": "Schedule of Business Acquisitions, by Acquisition [Table]", "terseLabel": "Schedule of Business Acquisitions, by Acquisition [Table]" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": { "auth_ref": [ "r234" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.", "label": "Schedule of Components of Income Tax Expense (Benefit) [Table Text Block]", "terseLabel": "Schedule of Components of Income Tax Expense (Benefit)" } } }, "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.", "label": "Schedule of Debt [Table Text Block]", "terseLabel": "Schedule of Notes Payable" } } }, "localname": "ScheduleOfDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": { "auth_ref": [ "r227" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.", "label": "Schedule of Deferred Tax Assets and Liabilities [Table Text Block]", "terseLabel": "Schedule of Deferred Tax Assets (Liabilities)" } } }, "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": { "auth_ref": [ "r221" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.", "label": "Schedule of Effective Income Tax Rate Reconciliation [Table Text Block]", "terseLabel": "Schedule of Effective Income Tax Rate Reconciliation" } } }, "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r153", "r157" ], "lang": { "en-US": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r153", "r157" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "terseLabel": "Schedules of Intangible Assets" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetTables", "http://www.xpel.com/role/SignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock": { "auth_ref": [ "r280" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of future minimum payments required in the aggregate and for each of the five succeeding fiscal years for operating leases having initial or remaining noncancelable lease terms in excess of one year and the total minimum rentals to be received in the future under noncancelable subleases as of the balance sheet date.", "label": "Schedule of Future Minimum Rental Payments for Operating Leases [Table Text Block]", "terseLabel": "Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases" } } }, "localname": "ScheduleOfFutureMinimumRentalPaymentsForOperatingLeasesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r148", "r150" ], "lang": { "en-US": { "role": { "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons.", "label": "Schedule of Goodwill [Table]", "terseLabel": "Schedule of Goodwill [Table]" } } }, "localname": "ScheduleOfGoodwillTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r148", "r150" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Schedule of Goodwill [Table Text Block]", "terseLabel": "Schedule of Goodwill" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/GoodwillTables", "http://www.xpel.com/role/SignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": { "auth_ref": [ "r95" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.", "label": "Schedule of Income before Income Tax, Domestic and Foreign [Table Text Block]", "terseLabel": "Schedule of Income before Income Tax" } } }, "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r6", "r24", "r25", "r26" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "Schedule of Inventory, Current [Table Text Block]", "terseLabel": "Schedule of Inventory" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/InventoriesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "auth_ref": [ "r181" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the combined aggregate amount of maturities and sinking fund requirements for all long-term borrowings for each of the five years following the date of the latest balance sheet date presented.", "label": "Schedule of Maturities of Long-term Debt [Table Text Block]", "terseLabel": "Schedule of Maturities of Long-term Debt" } } }, "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "auth_ref": [ "r180" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.", "label": "Schedule of Product Warranty Liability [Table Text Block]", "terseLabel": "Schedule of Product Warranty Liability" } } }, "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r32", "r171" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table]", "terseLabel": "Property, Plant and Equipment [Table]" } } }, "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r206", "r210" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "auth_ref": [ "r157" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "terseLabel": "Schedule of Future Amortization Expense of Finite-Lived Intangible Assets" } } }, "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingPolicyPolicyTextBlock": { "auth_ref": [ "r89" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for segment reporting.", "label": "Segment Reporting, Policy [Policy Text Block]", "terseLabel": "Segment Reporting" } } }, "localname": "SegmentReportingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingAndMarketingExpense": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfIncome": { "order": 1.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.", "label": "Selling and Marketing Expense", "terseLabel": "Sales and marketing" } } }, "localname": "SellingAndMarketingExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "monetaryItemType" }, "us-gaap_ServiceMember": { "auth_ref": [ "r199" ], "lang": { "en-US": { "role": { "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service.", "label": "Service [Member]", "terseLabel": "Service revenue" } } }, "localname": "ServiceMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome", "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod": { "auth_ref": [ "r210" ], "lang": { "en-US": { "role": { "documentation": "Number of shares issued under share-based payment arrangement.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Shares Issued in Period", "terseLabel": "Number of stock options issued (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r205", "r208" ], "lang": { "en-US": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]", "terseLabel": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "auth_ref": [ "r207" ], "lang": { "en-US": { "role": { "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period", "terseLabel": "Maximum term in number of years" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "Shares, Outstanding", "periodEndLabel": "Ending stock outstanding balance (in shares)", "periodStartLabel": "Beginning stock outstanding balance (in shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_ShortTermLeaseCost": { "auth_ref": [ "r285", "r292" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.", "label": "Short-term Lease, Cost", "terseLabel": "Short-term lease expense" } } }, "localname": "ShortTermLeaseCost", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r100" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "Significant Accounting Policies [Text Block]", "terseLabel": "SIGNIFICANT ACCOUNTING POLICIES" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SoftwareDevelopmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Internally developed software for sale, licensing or long-term internal use.", "label": "Software Development [Member]", "terseLabel": "Software" } } }, "localname": "SoftwareDevelopmentMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_StandardProductWarrantyAccrual": { "auth_ref": [ "r179" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability.", "label": "Standard Product Warranty Accrual", "periodEndLabel": "Ending balance warranty liability", "periodStartLabel": "Beginning balance warranty liability" } } }, "localname": "StandardProductWarrantyAccrual", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesProvisionsAndWarrantiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StandardProductWarrantyPolicy": { "auth_ref": [ "r89", "r178" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for standard warranties including the methodology for measuring the liability.", "label": "Standard Product Warranty, Policy [Policy Text Block]", "terseLabel": "Provisions and Warranties" } } }, "localname": "StandardProductWarrantyPolicy", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r42", "r185" ], "lang": { "en-US": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]", "terseLabel": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity", "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Comprehensive Income [Abstract]" } } }, "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]", "terseLabel": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity", "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r16", "r20", "r21", "r133" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "totalLabel": "Equity attributable to stockholders of the company" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Stockholders\u2019 equity" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r251", "r252", "r261" ], "calculation": { "http://www.xpel.com/role/ConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.", "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest", "periodEndLabel": "Ending balance", "periodStartLabel": "Beginning balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedBalanceSheets", "http://www.xpel.com/role/ConsolidatedStatementsOfChangesInStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r191" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.", "label": "Stockholders' Equity Note Disclosure [Text Block]", "terseLabel": "CAPITAL STOCK" } } }, "localname": "StockholdersEquityNoteDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/CapitalStock" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubsequentEventLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.", "label": "Subsequent Event [Line Items]", "terseLabel": "Subsequent Event [Line Items]" } } }, "localname": "SubsequentEventLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Event" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTable": { "auth_ref": [ "r294" ], "lang": { "en-US": { "role": { "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.", "label": "Subsequent Event [Table]", "terseLabel": "Subsequent Event [Table]" } } }, "localname": "SubsequentEventTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeAxis": { "auth_ref": [ "r294" ], "lang": { "en-US": { "role": { "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Axis]", "terseLabel": "Subsequent Event Type [Axis]" } } }, "localname": "SubsequentEventTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeDomain": { "auth_ref": [ "r294" ], "lang": { "en-US": { "role": { "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Domain]", "terseLabel": "Subsequent Event Type [Domain]" } } }, "localname": "SubsequentEventTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Subsequent Events [Abstract]" } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r295" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.", "label": "Subsequent Events [Text Block]", "terseLabel": "Subsequent Events" } } }, "localname": "SubsequentEventsTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SubsequentEvents" ], "xbrltype": "textBlockItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental cash flow information" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit": { "auth_ref": [ "r234" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of income tax expense (benefit) for remeasurement of deferred tax from change in tax rate pursuant to Tax Cuts and Jobs Act.", "label": "Tax Cuts and Jobs Act, Change in Tax Rate, Income Tax Expense (Benefit)", "terseLabel": "Deferred tax balance remeasurement" } } }, "localname": "TaxCutsAndJobsActOf2017ChangeInTaxRateIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_TaxCutsAndJobsActOf2017IncomeTaxExpenseBenefit": { "auth_ref": [ "r234" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of income tax expense (benefit) from effect of Tax Cuts and Jobs Act.", "label": "Tax Cuts and Jobs Act, Income Tax Expense (Benefit)", "negatedTerseLabel": "Income tax benefit related to foreign derived intangible income" } } }, "localname": "TaxCutsAndJobsActOf2017IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IncomeTaxesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_TradeAndOtherAccountsReceivablePolicy": { "auth_ref": [ "r127", "r128", "r129", "r130", "r132", "r134" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for accounts receivable.", "label": "Accounts Receivable [Policy Text Block]", "terseLabel": "Accounts Receivable" } } }, "localname": "TradeAndOtherAccountsReceivablePolicy", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_TradeNamesMember": { "auth_ref": [ "r244" ], "lang": { "en-US": { "role": { "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Trade Names [Member]", "terseLabel": "Trade name" } } }, "localname": "TradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TrademarksMember": { "auth_ref": [ "r244" ], "lang": { "en-US": { "role": { "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style.", "label": "Trademarks [Member]", "terseLabel": "Trademarks" } } }, "localname": "TrademarksMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/IntangibleAssetsNetScheduleOfIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r107", "r108", "r109", "r110", "r114", "r115", "r116" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_VariableLeaseCost": { "auth_ref": [ "r286", "r292" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.", "label": "Variable Lease, Cost", "terseLabel": "Variable lease payment" } } }, "localname": "VariableLeaseCost", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/LeasesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]", "terseLabel": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]", "terseLabel": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_VehiclesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Equipment used primarily for road transportation.", "label": "Vehicles [Member]", "terseLabel": "Vehicles" } } }, "localname": "VehiclesMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Average number of shares or units issued and outstanding that are used in calculating basic and diluted earnings per share (EPS).", "label": "Weighted Average Number of Shares Outstanding, Basic and Diluted", "terseLabel": "Weighted-average common shares outstanding, basic and diluted (in shares)" } } }, "localname": "WeightedAverageNumberOfShareOutstandingBasicAndDiluted", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfIncome" ], "xbrltype": "sharesItemType" }, "xpel_A2018AcquisitionsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "2018 Acquisitions [Member]", "label": "2018 Acquisitions [Member]", "terseLabel": "2018 Acquisitions" } } }, "localname": "A2018AcquisitionsMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails" ], "xbrltype": "domainItemType" }, "xpel_AcquisitionNotesPayableDue2022Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Acquisition Notes Payable Due 2022 [Member]", "label": "Acquisition Notes Payable Due 2022 [Member]", "terseLabel": "Acquisition Notes Payable Due 2022" } } }, "localname": "AcquisitionNotesPayableDue2022Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/DebtScheduleOfNotesPayableDetails" ], "xbrltype": "domainItemType" }, "xpel_ApogeeCorp.Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Apogee Corp. [Member]", "label": "Apogee Corp. [Member]", "verboseLabel": "Apogee Corp." } } }, "localname": "ApogeeCorp.Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_ArmourfendCADLLCMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Armourfend CAD, LLC [Member]", "label": "Armourfend CAD, LLC [Member]", "terseLabel": "Armourfend CAD, LLC" } } }, "localname": "ArmourfendCADLLCMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_AssetAcquisitionAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Asset Acquisition [Abstract]", "label": "Asset Acquisition [Abstract]", "terseLabel": "Paintshield, Ltd." } } }, "localname": "AssetAcquisitionAbstract", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "stringItemType" }, "xpel_AssetAcquisitionAccruedLiabilitiesOther": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Accrued Liabilities, Other", "label": "Asset Acquisition, Accrued Liabilities, Other", "negatedLabel": "Other accrued liabilities" } } }, "localname": "AssetAcquisitionAccruedLiabilitiesOther", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionAcquiredPatterns": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Acquired Patterns", "label": "Asset Acquisition, Acquired Patterns", "terseLabel": "Acquired patterns" } } }, "localname": "AssetAcquisitionAcquiredPatterns", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionAssetsAcquiredandLiabilitiesAssumedNet": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Assets Acquired and Liabilities Assumed, Net", "label": "Asset Acquisition, Assets Acquired and Liabilities Assumed, Net", "terseLabel": "Total net assets acquired" } } }, "localname": "AssetAcquisitionAssetsAcquiredandLiabilitiesAssumedNet", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Asset Acquisition [Axis]", "label": "Asset Acquisition [Axis]", "terseLabel": "Asset Acquisition [Axis]" } } }, "localname": "AssetAcquisitionAxis", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails" ], "xbrltype": "stringItemType" }, "xpel_AssetAcquisitionCashandEquivalents": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Cash and Equivalents", "label": "Asset Acquisition, Cash and Equivalents", "terseLabel": "Cash" } } }, "localname": "AssetAcquisitionCashandEquivalents", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionConsiderationTransferred": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Consideration Transferred", "label": "Asset Acquisition, Consideration Transferred", "terseLabel": "Asset acquisition price", "totalLabel": "Asset acquisition price" } } }, "localname": "AssetAcquisitionConsiderationTransferred", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionCurrentAssetsPrepaidExpenseAndOtherAssets": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Current Assets, Prepaid Expense And Other Assets", "label": "Asset Acquisition, Current Assets, Prepaid Expense And Other Assets", "terseLabel": "Prepaid expenses and other assets" } } }, "localname": "AssetAcquisitionCurrentAssetsPrepaidExpenseAndOtherAssets", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionCurrentAssetsReceivables": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Current Assets, Receivables", "label": "Asset Acquisition, Current Assets, Receivables", "terseLabel": "Accounts receivable" } } }, "localname": "AssetAcquisitionCurrentAssetsReceivables", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionCurrentLiabilitiesAccountsPayable": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Current Liabilities, Accounts Payable", "label": "Asset Acquisition, Current Liabilities, Accounts Payable", "negatedLabel": "Accounts payable" } } }, "localname": "AssetAcquisitionCurrentLiabilitiesAccountsPayable", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionCustomerRelationships": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Customer Relationships", "label": "Asset Acquisition, Customer Relationships", "terseLabel": "Customer relationships" } } }, "localname": "AssetAcquisitionCustomerRelationships", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionDebtCancellation": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": 6.0, "parentTag": "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Debt Cancellation", "label": "Asset Acquisition, Debt Cancellation", "terseLabel": "Forgiveness of debt" } } }, "localname": "AssetAcquisitionDebtCancellation", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "[Domain] for Asset Acquisition [Axis]", "label": "Asset Acquisition [Domain]", "terseLabel": "Asset Acquisition [Domain]" } } }, "localname": "AssetAcquisitionDomain", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails" ], "xbrltype": "domainItemType" }, "xpel_AssetAcquisitionInventory": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Inventory", "label": "Asset Acquisition, Inventory", "terseLabel": "Inventory" } } }, "localname": "AssetAcquisitionInventory", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionNotesPayable": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": 5.0, "parentTag": "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Notes Payable", "label": "Asset Acquisition, Notes Payable", "terseLabel": "Promissory note" } } }, "localname": "AssetAcquisitionNotesPayable", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionPropertyPlantAndEquipment": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Property, Plant, And Equipment", "label": "Asset Acquisition, Property, Plant, And Equipment", "terseLabel": "Property and equipment" } } }, "localname": "AssetAcquisitionPropertyPlantAndEquipment", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetAcquisitionTradeName": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Asset Acquisition, Trade Name", "label": "Asset Acquisition, Trade Name", "terseLabel": "Trade name" } } }, "localname": "AssetAcquisitionTradeName", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_AssetsAndLiabilitiesLesseeTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Assets And Liabilities, Lessee [Table Text Block]", "label": "Assets And Liabilities, Lessee [Table Text Block]", "terseLabel": "Schedule of Balance Sheet Information Related To Leases" } } }, "localname": "AssetsAndLiabilitiesLesseeTableTextBlock", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/LeasesTables" ], "xbrltype": "textBlockItemType" }, "xpel_BusinessAndAssetAcquisitionAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Business And Asset Acquisition [Axis]", "label": "Business And Asset Acquisition [Axis]", "terseLabel": "Business and Asset Acquisition [Axis]" } } }, "localname": "BusinessAndAssetAcquisitionAxis", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "stringItemType" }, "xpel_BusinessAndAssetAcquisitionDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "[Domain] for Business And Asset Acquisition [Axis]", "label": "Business And Asset Acquisition [Domain]", "terseLabel": "Business And Asset Acquisition [Domain]" } } }, "localname": "BusinessAndAssetAcquisitionDomain", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "domainItemType" }, "xpel_BusinessAndAssetAcquisitionsProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business And Asset Acquisitions, Pro Forma Information, Earnings Or Loss Of Acquiree Since Acquisition Date, Actual", "label": "Business And Asset Acquisitions, Pro Forma Information, Earnings Or Loss Of Acquiree Since Acquisition Date, Actual", "terseLabel": "Operating income of 2018 acquisitions" } } }, "localname": "BusinessAndAssetAcquisitionsProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessAndAssetAcquisitionsProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business And Asset Acquisitions, Pro Forma Information, Revenue Of Acquiree Since Acquisition Date, Actual", "label": "Business And Asset Acquisitions, Pro Forma Information, Revenue Of Acquiree Since Acquisition Date, Actual", "terseLabel": "Revenue of 2018 acquisitions" } } }, "localname": "BusinessAndAssetAcquisitionsProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessAndAssetAcquisitionsProFormaInformationTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Business And Asset Acquisitions, Pro Forma Information [Table Text Block]", "label": "Business And Asset Acquisitions, Pro Forma Information [Table Text Block]", "terseLabel": "Pro Forma Results" } } }, "localname": "BusinessAndAssetAcquisitionsProFormaInformationTableTextBlock", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsTables" ], "xbrltype": "textBlockItemType" }, "xpel_BusinessAndAssetAcquisitionsProFormaNetIncomeLoss": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business And Asset Acquisitions, Pro Forma Net Income (Loss)", "label": "Business And Asset Acquisitions, Pro Forma Net Income (Loss)", "terseLabel": "Net income" } } }, "localname": "BusinessAndAssetAcquisitionsProFormaNetIncomeLoss", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessAndAssetAcquisitionsProFormaRevenue": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business And Asset Acquisitions, Pro Forma Revenue", "label": "Business And Asset Acquisitions, Pro Forma Revenue", "terseLabel": "Revenue" } } }, "localname": "BusinessAndAssetAcquisitionsProFormaRevenue", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionAccruedLiabilitiesOther": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Accrued Liabilities, Other", "label": "Business Combination And Asset Acquisition, Accrued Liabilities, Other", "negatedTerseLabel": "Other accrued liabilities" } } }, "localname": "BusinessCombinationAndAssetAcquisitionAccruedLiabilitiesOther", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionAcquiredPatterns": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Acquired Patterns", "label": "Business Combination And Asset Acquisition, Acquired Patterns", "terseLabel": "Acquired patterns" } } }, "localname": "BusinessCombinationAndAssetAcquisitionAcquiredPatterns", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionAssetsAcquiredandLiabilitiesAssumedNet": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Assets Acquired and Liabilities Assumed, Net", "label": "Business Combination And Asset Acquisition, Assets Acquired and Liabilities Assumed, Net", "terseLabel": "Total net business combination and assets acquired" } } }, "localname": "BusinessCombinationAndAssetAcquisitionAssetsAcquiredandLiabilitiesAssumedNet", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionCashAndCashEquivalents": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Cash And Cash Equivalents", "label": "Business Combination And Asset Acquisition, Cash And Cash Equivalents", "terseLabel": "Cash" } } }, "localname": "BusinessCombinationAndAssetAcquisitionCashAndCashEquivalents", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Consideration Transferred", "label": "Business Combination And Asset Acquisition, Consideration Transferred", "totalLabel": "Business combination and asset acquisition price" } } }, "localname": "BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionCurrentAssetsPrepaidExpenseandOtherAssets": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Current Assets, Prepaid Expense and Other Assets", "label": "Business Combination And Asset Acquisition, Current Assets, Prepaid Expense and Other Assets", "terseLabel": "Prepaid expenses and other assets" } } }, "localname": "BusinessCombinationAndAssetAcquisitionCurrentAssetsPrepaidExpenseandOtherAssets", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionCurrentAssetsReceivables": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Current Assets, Receivables", "label": "Business Combination And Asset Acquisition, Current Assets, Receivables", "terseLabel": "Accounts receivable" } } }, "localname": "BusinessCombinationAndAssetAcquisitionCurrentAssetsReceivables", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionCurrentLiabilitiesAccountPayable": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Current Liabilities, Account Payable", "label": "Business Combination And Asset Acquisition, Current Liabilities, Account Payable", "negatedTerseLabel": "Accounts payable" } } }, "localname": "BusinessCombinationAndAssetAcquisitionCurrentLiabilitiesAccountPayable", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionCustomerRelationships": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Customer Relationships", "label": "Business Combination And Asset Acquisition, Customer Relationships", "terseLabel": "Customer relationships" } } }, "localname": "BusinessCombinationAndAssetAcquisitionCustomerRelationships", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionDebtCancellation": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": 3.0, "parentTag": "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Debt Cancellation", "label": "Business Combination And Asset Acquisition, Debt Cancellation", "terseLabel": "Forgiveness of debt" } } }, "localname": "BusinessCombinationAndAssetAcquisitionDebtCancellation", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionInventory": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Inventory", "label": "Business Combination And Asset Acquisition, Inventory", "terseLabel": "Inventory" } } }, "localname": "BusinessCombinationAndAssetAcquisitionInventory", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionNotesPayable": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": 2.0, "parentTag": "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Notes Payable", "label": "Business Combination And Asset Acquisition, Notes Payable", "terseLabel": "Promissory note" } } }, "localname": "BusinessCombinationAndAssetAcquisitionNotesPayable", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionPropertyPlantAndEquipment": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Property, Plant, And Equipment", "label": "Business Combination And Asset Acquisition, Property, Plant, And Equipment", "terseLabel": "Property and equipment" } } }, "localname": "BusinessCombinationAndAssetAcquisitionPropertyPlantAndEquipment", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationAndAssetAcquisitionTradeName": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Business Combination And Asset Acquisition, Trade Name", "label": "Business Combination And Asset Acquisition, Trade Name", "terseLabel": "Trade name" } } }, "localname": "BusinessCombinationAndAssetAcquisitionTradeName", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_BusinessCombinationandAssetAcquisitionAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Business Combination and Asset Acquisition [Abstract]", "label": "Business Combination and Asset Acquisition [Abstract]", "terseLabel": "2018 Acquisitions" } } }, "localname": "BusinessCombinationandAssetAcquisitionAbstract", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "stringItemType" }, "xpel_BusinessCombinationsAndAssetAcquisitionsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Business Combinations And Asset Acquisitions [Abstract]", "label": "Business Combinations And Asset Acquisitions [Abstract]" } } }, "localname": "BusinessCombinationsAndAssetAcquisitionsAbstract", "nsuri": "http://www.xpel.com/20191231", "xbrltype": "stringItemType" }, "xpel_BusinessCombinationsAndAssetAcquisitionsDisclosureTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Business Combinations And Asset Acquisitions Disclosure [Text Block]", "label": "Business Combinations And Asset Acquisitions Disclosure [Text Block]", "terseLabel": "BUSINESS COMBINATIONS" } } }, "localname": "BusinessCombinationsAndAssetAcquisitionsDisclosureTextBlock", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinations" ], "xbrltype": "textBlockItemType" }, "xpel_CanadaInc.CalgaryMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Canada, Inc., Calgary [Member]", "label": "Canada, Inc., Calgary [Member]", "terseLabel": "Canada, Inc., Calgary" } } }, "localname": "CanadaInc.CalgaryMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails" ], "xbrltype": "domainItemType" }, "xpel_ComputerEquipmentPlotterMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Computer Equipment, Plotter [Member]", "label": "Computer Equipment, Plotter [Member]", "terseLabel": "Plotters" } } }, "localname": "ComputerEquipmentPlotterMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/PropertyAndEquipmentNetScheduleOfPropertyPlantAndEquipmentDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "xpel_ContractWithCustomerLiabilityIncreaseFromCashReceipts": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Contract With Customer, Liability, Increase From Cash Receipts", "label": "Contract With Customer, Liability, Increase From Cash Receipts", "terseLabel": "Payments received for which performance obligations have not been satisfied" } } }, "localname": "ContractWithCustomerLiabilityIncreaseFromCashReceipts", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "xpel_ContractwithCustomerLiabilityForeignCurrencyTranslation": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Contract with Customer, Liability, Foreign Currency Translation", "label": "Contract with Customer, Liability, Foreign Currency Translation", "terseLabel": "Effect of Foreign Currency Translation" } } }, "localname": "ContractwithCustomerLiabilityForeignCurrencyTranslation", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueScheduleOfTransactionsWithinContractLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "xpel_DebtInstrumentCovenantDebtServiceCoverageRatioRequiredMinimum": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Debt Instrument, Covenant, Debt Service Coverage Ratio Required, Minimum", "label": "Debt Instrument, Covenant, Debt Service Coverage Ratio Required, Minimum", "terseLabel": "Covenant, debt service coverage ratio required, minimum" } } }, "localname": "DebtInstrumentCovenantDebtServiceCoverageRatioRequiredMinimum", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "pureItemType" }, "xpel_DebtInstrumentCovenantDebtToIntangibleNetWorthRatioRequiredMinimum": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Debt Instrument, Covenant, Debt To Intangible Net Worth Ratio Required, Minimum", "label": "Debt Instrument, Covenant, Debt To Intangible Net Worth Ratio Required, Minimum", "terseLabel": "Covenant, debt to intangible net worth ratio required, minimum" } } }, "localname": "DebtInstrumentCovenantDebtToIntangibleNetWorthRatioRequiredMinimum", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "pureItemType" }, "xpel_DebtInstrumentFloorRate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Debt Instrument, Floor Rate", "label": "Debt Instrument, Floor Rate", "terseLabel": "Debt instrument floor rate" } } }, "localname": "DebtInstrumentFloorRate", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "percentItemType" }, "xpel_DeferredTaxAssetsAcquisitionNotesAccretion": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 5.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Deferred Tax Assets, Acquisition Notes Accretion", "label": "Deferred Tax Assets, Acquisition Notes Accretion", "terseLabel": "Accretion of Acquisition Notes" } } }, "localname": "DeferredTaxAssetsAcquisitionNotesAccretion", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "xpel_DeferredTaxAssetsTaxDeferredExpense263AAdjustment": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_DeferredTaxAssetsGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Deferred Tax Assets, Tax Deferred Expense, 263 (A) Adjustment", "label": "Deferred Tax Assets, Tax Deferred Expense, 263 (A) Adjustment", "terseLabel": "263(A) Adjustment" } } }, "localname": "DeferredTaxAssetsTaxDeferredExpense263AAdjustment", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "xpel_DeferredTaxLiabilitiesAccretion": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Deferred Tax Liabilities, Accretion", "label": "Deferred Tax Liabilities, Accretion", "terseLabel": "Accretion" } } }, "localname": "DeferredTaxLiabilitiesAccretion", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "xpel_DeferredTaxLiabilitiesPropertyPlantandEquipmentandIntangibleAssets": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_DeferredIncomeTaxLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Deferred Tax Liabilities, Property, Plant and Equipment and Intangible Assets", "label": "Deferred Tax Liabilities, Property, Plant and Equipment and Intangible Assets", "terseLabel": "Fixed and Intangible Assets" } } }, "localname": "DeferredTaxLiabilitiesPropertyPlantandEquipmentandIntangibleAssets", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/IncomeTaxesComponentsOfDeferredIncomeTaxAssetsLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "xpel_EShieldsLLCMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "eShields, LLC [Member]", "label": "eShields, LLC [Member]", "terseLabel": "eShields, LLC" } } }, "localname": "EShieldsLLCMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails" ], "xbrltype": "domainItemType" }, "xpel_EffectiveIncomeTaxRateReconciliationForeignDerivedIntangibleIncomeBenefitAmount": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 5.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Effective Income Tax Rate Reconciliation, Foreign Derived Intangible Income Benefit Amount", "label": "Effective Income Tax Rate Reconciliation, Foreign Derived Intangible Income Benefit Amount", "negatedTerseLabel": "Foreign derived intangible income benefit" } } }, "localname": "EffectiveIncomeTaxRateReconciliationForeignDerivedIntangibleIncomeBenefitAmount", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_EffectiveIncomeTaxRateReconciliationReturnToProvisionAdjustmentAmount": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails": { "order": 6.0, "parentTag": "us-gaap_IncomeTaxExpenseBenefit", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Effective Income Tax Rate Reconciliation, Return To Provision Adjustment, Amount", "label": "Effective Income Tax Rate Reconciliation, Return To Provision Adjustment, Amount", "negatedTerseLabel": "Return to provision estimated revision" } } }, "localname": "EffectiveIncomeTaxRateReconciliationReturnToProvisionAdjustmentAmount", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/IncomeTaxesIncomeTaxesProvisionDifferenceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_HSBCBankCanadaMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "HSBC Bank Canada [Member]", "label": "HSBC Bank Canada [Member]", "terseLabel": "HSBC Bank Canada" } } }, "localname": "HSBCBankCanadaMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "xpel_IncreaseDecreaseInOperatingLeaseLiabilities": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Increase (Decrease) In Operating Lease Liabilities", "label": "Increase (Decrease) In Operating Lease Liabilities", "terseLabel": "Change in operating lease liabilities" } } }, "localname": "IncreaseDecreaseInOperatingLeaseLiabilities", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "xpel_LargestCustomerMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Largest Customer [Member]", "label": "Largest Customer [Member]", "terseLabel": "Largest Customer" } } }, "localname": "LargestCustomerMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesAccountsReceivableDetails" ], "xbrltype": "domainItemType" }, "xpel_LongtermPurchaseCommitmentAmountAnnually": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Long-term Purchase Commitment, Amount, Annually", "label": "Long-term Purchase Commitment, Amount, Annually", "terseLabel": "Annual purchase commitment" } } }, "localname": "LongtermPurchaseCommitmentAmountAnnually", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/CommitmentsAndContingenciesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "xpel_LongtermPurchaseCommitmentAmountQuarterly": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Long-term Purchase Commitment, Amount, Quarterly", "label": "Long-term Purchase Commitment, Amount, Quarterly", "terseLabel": "Quarterly purchase commitment" } } }, "localname": "LongtermPurchaseCommitmentAmountQuarterly", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/CommitmentsAndContingenciesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "xpel_LongtermPurchaseCommitmentPeriodRenewal": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Long-term Purchase Commitment, Period Renewal", "label": "Long-term Purchase Commitment, Period Renewal", "terseLabel": "Purchase commitment renewal period" } } }, "localname": "LongtermPurchaseCommitmentPeriodRenewal", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/CommitmentsAndContingenciesNarrativeDetails" ], "xbrltype": "durationItemType" }, "xpel_LongtermPurchaseCommitmentRenewalOptionNotice": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Long-term Purchase Commitment, Renewal Option Notice", "label": "Long-term Purchase Commitment, Renewal Option Notice", "terseLabel": "Purchase commitment renewal option notice" } } }, "localname": "LongtermPurchaseCommitmentRenewalOptionNotice", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/CommitmentsAndContingenciesNarrativeDetails" ], "xbrltype": "durationItemType" }, "xpel_MiddleEastAfricaMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Middle East, Africa [Member]", "label": "Middle East, Africa [Member]", "terseLabel": "Middle East/Africa" } } }, "localname": "MiddleEastAfricaMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "xpel_NoncashorPartNoncashAcquisitionDebtForgiven": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Noncash or Part Noncash Acquisition, Debt Forgiven", "label": "Noncash or Part Noncash Acquisition, Debt Forgiven", "terseLabel": "Forgiveness of debt for acquired entities" } } }, "localname": "NoncashorPartNoncashAcquisitionDebtForgiven", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/ConsolidatedStatementsOfCashFlows" ], "xbrltype": "monetaryItemType" }, "xpel_NumberOfLocationsClosed": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number Of Locations Closed", "label": "Number Of Locations Closed", "terseLabel": "Number of locations closed" } } }, "localname": "NumberOfLocationsClosed", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesImpairmentOfLongLivedAssetsDetails" ], "xbrltype": "integerItemType" }, "xpel_OtherGeographicRegionMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Other Geographic Region [Member]", "label": "Other Geographic Region [Member]", "terseLabel": "Other" } } }, "localname": "OtherGeographicRegionMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueRevenueEstimateByGeographicAreaDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesGoodwillDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesIntangibleAssetsDetails", "http://www.xpel.com/role/SignificantAccountingPoliciesPropertyPlantAndEquipmentDetails" ], "xbrltype": "domainItemType" }, "xpel_OtherInventoryFilmAndFilmBasedProductsGross": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Other Inventory, Film And Film Based Products, Gross", "label": "Other Inventory, Film And Film Based Products, Gross", "terseLabel": "Film and film based products" } } }, "localname": "OtherInventoryFilmAndFilmBasedProductsGross", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/InventoriesScheduleOfInventoryDetails" ], "xbrltype": "monetaryItemType" }, "xpel_PaintshieldLtdMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Paintshield, Ltd [Member]", "label": "Paintshield, Ltd [Member]", "terseLabel": "Paintshield, Ltd" } } }, "localname": "PaintshieldLtdMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails", "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails", "http://www.xpel.com/role/BusinessCombinationsNarrativeDetails", "http://www.xpel.com/role/BusinessCombinationsProFormaResultsDetails" ], "xbrltype": "domainItemType" }, "xpel_PaymentsForAssetAcquisition": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": 4.0, "parentTag": "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Payments For Asset Acquisition", "label": "Payments For Asset Acquisition", "terseLabel": "Payments for asset acquisition" } } }, "localname": "PaymentsForAssetAcquisition", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_PaymentsForBusinessCombinationAndAssetAcquisition": { "auth_ref": [], "calculation": { "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails": { "order": 1.0, "parentTag": "xpel_BusinessCombinationAndAssetAcquisitionConsiderationTransferred", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Payments For Business Combination And Asset Acquisition", "label": "Payments For Business Combination And Asset Acquisition", "terseLabel": "Payments for business combination and asset acquisition" } } }, "localname": "PaymentsForBusinessCombinationAndAssetAcquisition", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "monetaryItemType" }, "xpel_ProductRevenueOtherMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Product Revenue, Other [Member]", "label": "Product Revenue, Other [Member]", "terseLabel": "Other" } } }, "localname": "ProductRevenueOtherMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_ProductRevenuePaintProtectionFilmMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Product Revenue, Paint Protection Film [Member]", "label": "Product Revenue, Paint Protection Film [Member]", "terseLabel": "Paint protection film" } } }, "localname": "ProductRevenuePaintProtectionFilmMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_ProductRevenueWindowFilmMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Product Revenue, Window Film [Member]", "label": "Product Revenue, Window Film [Member]", "terseLabel": "Window film" } } }, "localname": "ProductRevenueWindowFilmMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_ProtexCanadaInc.Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Protex Canada, Inc. [Member]", "label": "Protex Canada, Inc. [Member]", "terseLabel": "Protex Canada, Inc." } } }, "localname": "ProtexCanadaInc.Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "domainItemType" }, "xpel_QuebecInc.PointeClaireMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Quebec, Inc., Pointe Claire [Member]", "label": "Quebec, Inc., Pointe Claire [Member]", "terseLabel": "Quebec, Inc., Pointe Claire" } } }, "localname": "QuebecInc.PointeClaireMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails" ], "xbrltype": "domainItemType" }, "xpel_QuebecIncQuebecCityMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Quebec, Inc, Quebec City [Member]", "label": "Quebec, Inc, Quebec City [Member]", "terseLabel": "Quebec, Inc" } } }, "localname": "QuebecIncQuebecCityMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsBusinessCombinationsCompleteByYearEndDetails" ], "xbrltype": "domainItemType" }, "xpel_ScheduleOfBusinessAndAssetAcquisitionsByAcquisitionTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule Of Business And Asset Acquisitions, By Acquisition [Table Text Block]", "label": "Schedule Of Business And Asset Acquisitions, By Acquisition [Table Text Block]", "terseLabel": "Business Combination Completed by Year-end" } } }, "localname": "ScheduleOfBusinessAndAssetAcquisitionsByAcquisitionTableTextBlock", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsTables" ], "xbrltype": "textBlockItemType" }, "xpel_ScheduleOfOwnershipInterestsAndFunctionalCurrenciesTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule Of Ownership Interests And Functional Currencies [Table Text Block]", "label": "Schedule Of Ownership Interests And Functional Currencies [Table Text Block]", "terseLabel": "Schedule of Ownership Interests and Functional Currencies" } } }, "localname": "ScheduleOfOwnershipInterestsAndFunctionalCurrenciesTableTextBlock", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesTables" ], "xbrltype": "textBlockItemType" }, "xpel_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedAssetAndBusinessCombinationsTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed, Asset And Business Combinations [Table Text Block]", "label": "Schedule Of Recognized Identified Assets Acquired And Liabilities Assumed, Asset And Business Combinations [Table Text Block]", "terseLabel": "Acquisition Purchase Price" } } }, "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedAssetAndBusinessCombinationsTableTextBlock", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsTables" ], "xbrltype": "textBlockItemType" }, "xpel_SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Series of individually Immaterial Business And Asset Acquisitions [Member]", "label": "Series of individually Immaterial Business And Asset Acquisitions [Member]", "terseLabel": "2018 Acquisitions" } } }, "localname": "SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/BusinessCombinationsAcquisitionPurchasePriceDetails" ], "xbrltype": "domainItemType" }, "xpel_ServiceRevenueCutbankCreditsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Service Revenue, Cutbank Credits [Member]", "label": "Service Revenue, Cutbank Credits [Member]", "terseLabel": "Cutbank credits" } } }, "localname": "ServiceRevenueCutbankCreditsMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_ServiceRevenueInstallationLaborMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Service Revenue, Installation Labor [Member]", "label": "Service Revenue, Installation Labor [Member]", "terseLabel": "Installation labor" } } }, "localname": "ServiceRevenueInstallationLaborMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_ServiceRevenueSoftwareMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Service Revenue, Software [Member]", "label": "Service Revenue, Software [Member]", "terseLabel": "Software" } } }, "localname": "ServiceRevenueSoftwareMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_ServiceRevenueTrainingMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Service Revenue, Training [Member]", "label": "Service Revenue, Training [Member]", "terseLabel": "Training" } } }, "localname": "ServiceRevenueTrainingMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueDisaggregationOfRevenueDetails" ], "xbrltype": "domainItemType" }, "xpel_SharebasedCompensationArrangementBySharebasedPaymentAwardSharesAllocatedToBenefitPlanBasedOnSharesOutstandingAndIssuedThresholdPercent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share-based Compensation Arrangement By Share-based Payment Award, Shares Allocated To Benefit Plan Based On Shares Outstanding And Issued, Threshold Percent", "label": "Share-based Compensation Arrangement By Share-based Payment Award, Shares Allocated To Benefit Plan Based On Shares Outstanding And Issued, Threshold Percent", "terseLabel": "Maximum number of allocated and made available to be issued shares as a percent" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardSharesAllocatedToBenefitPlanBasedOnSharesOutstandingAndIssuedThresholdPercent", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/StockOptionsNarrativeDetails" ], "xbrltype": "percentItemType" }, "xpel_TheBankOfSanAntonioMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The Bank Of San Antonio [Member]", "label": "The Bank Of San Antonio [Member]", "terseLabel": "The Bank of San Antonio" } } }, "localname": "TheBankOfSanAntonioMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/DebtNarrativeDetails" ], "xbrltype": "domainItemType" }, "xpel_TheChinaDistributorMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The China Distributor [Member]", "label": "The China Distributor [Member]", "terseLabel": "The China Distributor" } } }, "localname": "TheChinaDistributorMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/RevenueNarrativeDetails" ], "xbrltype": "domainItemType" }, "xpel_XPELAcquisitionCorp.Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "XPEL Acquisition Corp. [Member]", "label": "XPEL Acquisition Corp. [Member]", "terseLabel": "XPEL Acquisition Corp." } } }, "localname": "XPELAcquisitionCorp.Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_XPELB.VMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "XPEL B.V [Member]", "label": "XPEL B.V [Member]", "terseLabel": "XPEL B.V." } } }, "localname": "XPELB.VMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_XPELCanadaCorp.Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "XPEL Canada Corp. [Member]", "label": "XPEL Canada Corp. [Member]", "terseLabel": "XPEL Canada Corp." } } }, "localname": "XPELCanadaCorp.Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_XPELDeMexicoS.DeR.L.DeC.V.Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "XPEL De Mexico S. De R.L. De C.V. [Member]", "label": "XPEL De Mexico S. De R.L. De C.V. [Member]", "terseLabel": "XPEL de Mexico S. de R.L. de C.V." } } }, "localname": "XPELDeMexicoS.DeR.L.DeC.V.Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_XPELGermanyGmbHMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "XPEL Germany GmbH [Member]", "label": "XPEL Germany GmbH [Member]", "terseLabel": "XPEL Germany GmbH" } } }, "localname": "XPELGermanyGmbHMember", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails" ], "xbrltype": "domainItemType" }, "xpel_XPELLtd.Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "XPEL, Ltd. [Member]", "label": "XPEL, Ltd. [Member]", "terseLabel": "XPEL, Ltd." } } }, "localname": "XPELLtd.Member", "nsuri": "http://www.xpel.com/20191231", "presentation": [ "http://www.xpel.com/role/SignificantAccountingPoliciesOwnershipPercentagesAndFunctionalCurrenciesDetails", "http://www.xpel.com/role/SubsequentEventsNarrativeDetails" ], "xbrltype": "domainItemType" } }, "unitCount": 8 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r100": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1337-109256" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3630-109257" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "270", "URI": "http://asc.fasb.org/extlink&oid=116846552&loc=d3e543-108305" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8933-108599" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9031-108599" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "a", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9054-108599" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4428-111522" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4531-111522" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e4975-111524" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=SL6953423-111524" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5212-111524" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(26)(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5033-111524" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5074-111524" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5093-111524" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=27010918&loc=d3e74512-122707" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=118955202&loc=SL82895884-210446" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=116846819&loc=d3e3927-108312" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(26)(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 5.BB)", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729" }, "r141": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "http://asc.fasb.org/topic&trid=2126998" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=77989000&loc=SL49117168-202975" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13854-109267" }, "r151": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/subtopic&trid=2144439" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16373-109275" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "30", "SubTopic": "40", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=118172244&loc=d3e17916-109280" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "25", "SubTopic": "50", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=16397303&loc=d3e19347-109286" }, "r165": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "http://asc.fasb.org/topic&trid=2144416" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226348&loc=d3e2420-110228" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.CC)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742" }, "r173": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "http://asc.fasb.org/topic&trid=2155823" }, "r174": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r175": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(2))", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "((c)(3))", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1),(c)(5)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=68068213&loc=d3e12565-110249" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=6802200&loc=d3e1835-112601" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=6802200&loc=SL6230698-112601" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870" }, "r184": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "http://asc.fasb.org/topic&trid=2208564" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21475-112644" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21506-112644" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21521-112644" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21538-112644" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=27012166&loc=d3e187085-122770" }, "r191": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "http://asc.fasb.org/topic&trid=2208762" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130531-203044" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130532-203044" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r202": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "http://asc.fasb.org/topic&trid=49130388" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "70", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942" }, "r204": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "715", "URI": "http://asc.fasb.org/topic&trid=2235017" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r211": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "http://asc.fasb.org/topic&trid=2228938" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "35", "Subparagraph": "(a)", "Topic": "720", "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "35", "Subparagraph": "(b)", "Topic": "720", "URI": "http://asc.fasb.org/extlink&oid=6420018&loc=d3e36677-107848" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "730", "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=117330534&loc=d3e28680-109314" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32247-109318" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32280-109318" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e31931-109318" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32687-109319" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32698-109319" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32809-109319" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32840-109319" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32537-109319" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32847-109319" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32559-109319" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32621-109319" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32632-109319" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e38679-109324" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "05", "SubTopic": "30", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=65884525&loc=d3e40913-109327" }, "r239": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "http://asc.fasb.org/topic&trid=2144680" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Subparagraph": "(a)-(d)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=6909625&loc=d3e227-128457" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5263-128473" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=77890550&loc=d3e5333-128473" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6578-128477" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=116859721&loc=d3e6613-128477" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=35744584&loc=d3e6927-128479" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4568447-111683" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4568740-111683" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569616-111683" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4569643-111683" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=108774443&loc=SL4613674-111683" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "4I", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116874947&loc=SL4590271-111686" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116874947&loc=SL4591551-111686" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116874947&loc=SL4591552-111686" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13531-108611" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=109240200&loc=d3e30690-110894" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=109240200&loc=d3e30700-110894" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450222&loc=d3e30840-110895" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b,c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28541-108399" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28551-108399" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775744&loc=d3e28555-108399" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(Note 3)", "Topic": "840", "URI": "http://asc.fasb.org/extlink&oid=82846649&loc=d3e38371-112697" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "840", "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41502-112717" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "840", "URI": "http://asc.fasb.org/extlink&oid=77902758&loc=d3e41502-112717" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918638-209977" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.1)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888399&loc=SL77918982-209971" }, "r293": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/subtopic&trid=77888251" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r295": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "http://asc.fasb.org/topic&trid=2122774" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "http://asc.fasb.org/extlink&oid=68072869&loc=d3e41242-110953" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.13(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(2))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.10)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=116637391&loc=SL114874048-224260" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=75038535&loc=d3e64711-112823" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.13)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(15)(b)(2))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(24))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.5(c))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=119400593&loc=d3e572229-122910" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.14)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116637232&loc=SL114874131-224263" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=99380617&loc=SL75241803-196195" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "http://asc.fasb.org/extlink&oid=6589523&loc=d3e617274-123014" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "740", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491622&loc=d3e9504-115650" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=6590653&loc=d3e638233-123024" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.15)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "985", "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756" }, "r331": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r332": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-23" }, "r333": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r334": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1-" }, "r335": { "Name": "Forms 10-K, 20-F, 40-F", "Number": "240", "Publisher": "SEC", "Section": "15", "Subsection": "d-1" }, "r336": { "Name": "Regulation 12B", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r337": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r338": { "Name": "Securities Act", "Number": "7A", "Publisher": "SEC", "Section": "B", "Subsection": "2" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a),20,24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19,20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6801-107765" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a)(5))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6935-107765" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669646-108580" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e637-108580" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e681-108580" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669686-108580" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "17B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL34724394-108580" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669619-108580" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=SL7669625-108580" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=118930883&loc=d3e557-108580" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116657188&loc=SL116659661-227067" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(5))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.19)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.8)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3179-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3367-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3000-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3521-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3044-108585" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4273-108586" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4297-108586" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4304-108586" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4313-108586" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4332-108586" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=SL98516268-108586" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18780-107790" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18823-107790" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(e),(f))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(h)(1)(i))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e23780-122690" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24072-122690" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04.(a))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24072-122690" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-09)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=26873400&loc=d3e24092-122690" } }, "version": "2.1" } XML 20 R68.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES - Income Before Income Tax (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Income Tax Disclosure [Abstract]    
Domestic $ 15,375,731 $ 10,008,013
International 1,574,697 1,473,292
Income before income taxes $ 16,950,428 $ 11,481,305
XML 21 R60.htm IDEA: XBRL DOCUMENT v3.20.1
INVENTORIES - Schedule of Inventory (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Inventory Disclosure [Abstract]    
Film and film based products $ 13,538,610 $ 9,399,067
Other products 1,226,708 1,264,862
Packaging and supplies 496,661 320,738
Inventory reserve (120,826) (185,056)
Inventory, net $ 15,141,153 $ 10,799,611
XML 22 R64.htm IDEA: XBRL DOCUMENT v3.20.1
EMPLOYEE BENEFIT PLAN - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Retirement Benefits [Abstract]    
Contribution expense $ 174,744 $ 124,431
XML 23 R47.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Provisions and Warranties (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Movement in Standard Product Warranty Accrual [Roll Forward]    
Beginning balance warranty liability $ 70,250 $ 95,882
Warranties assumed in period 384,214 370,502
Payments (388,873) (396,134)
Ending balance warranty liability $ 65,591 $ 70,250
XML 24 R43.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Intangible Assets (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, net $ 3,820,460 $ 3,804,026
United States    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, net 2,074,235 1,891,479
Canada    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, net 1,431,247 1,652,347
Europe    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, net 81,612 1,773
Other    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, net $ 233,366 $ 258,427
Trademarks    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 10 years  
Software    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 5 years  
Other    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 10 years  
Minimum | Trade name    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 10 years  
Minimum | Contractual and customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 9 years  
Minimum | Non-compete    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 3 years  
Maximum | Trade name    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 15 years  
Maximum | Contractual and customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 10 years  
Maximum | Non-compete    
Finite-Lived Intangible Assets [Line Items]    
Intangible asset useful life 5 years  
XML 25 R75.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Leases [Abstract]    
Operating lease expense $ 1,210,969  
Variable lease payment 492,771  
Short-term lease expense 157,253  
Operating lease payment $ 1,235,264  
Operating lease rent expense   $ 1,209,208
XML 26 R81.htm IDEA: XBRL DOCUMENT v3.20.1
BUSINESS COMBINATIONS - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Paintshield, Ltd    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets weighted average useful life 2 years  
2018 Acquisitions    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets weighted average useful life   9 years
Revenue of 2018 acquisitions   $ 613,701
Operating income of 2018 acquisitions   $ 43,030
XML 27 R71.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES - Components of the Income Tax Provision (Benefit) (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Current Income Tax Expense    
Federal $ 2,412,157 $ 2,182,415
Foreign 518,528 431,638
State 3,068 232,238
Total Current Income Tax Expense 2,933,753 2,846,291
Deferred Income Tax Expense/(Benefit)    
Federal 99,870 (65,801)
Foreign (78,267) (20,417)
Total Deferred Income Tax Expense/(Benefit) 21,603 (86,218)
Income tax expense $ 2,955,356 $ 2,760,073
XML 28 R79.htm IDEA: XBRL DOCUMENT v3.20.1
BUSINESS COMBINATIONS - Business Combinations Complete by Year-End (Details) - USD ($)
12 Months Ended
Dec. 20, 2019
Nov. 01, 2018
Aug. 01, 2018
Jun. 01, 2018
Apr. 01, 2018
Dec. 31, 2019
Quebec, Inc            
Business Acquisition [Line Items]            
Purchase price         $ 87,248  
Quebec, Inc., Pointe Claire            
Business Acquisition [Line Items]            
Purchase price     $ 363,239      
Canada, Inc., Calgary            
Business Acquisition [Line Items]            
Purchase price     $ 332,798      
Apogee Corp.            
Business Acquisition [Line Items]            
Purchase price   $ 638,552        
eShields, LLC            
Business Acquisition [Line Items]            
Asset acquisition price       $ 496,982    
Paintshield, Ltd            
Business Acquisition [Line Items]            
Asset acquisition price $ 127,623         $ 127,623
XML 29 R52.htm IDEA: XBRL DOCUMENT v3.20.1
REVENUE - Narrative (Details)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
The China Distributor | Customer Concentration Risk | Revenue from Contract with Customer Benchmark    
Disaggregation of Revenue [Line Items]    
Concentration risk percentage 23.50% 29.20%
XML 30 R56.htm IDEA: XBRL DOCUMENT v3.20.1
INTANGIBLE ASSETS, NET - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Goodwill and Intangible Assets Disclosure [Abstract]    
Amortization of intangible assets $ 781,105 $ 642,801
Impairment of intangible assets, excluding goodwill $ 30,480 $ 0
XML 31 R37.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Ownership Percentages and Functional Currencies (Details)
Dec. 31, 2019
XPEL, Ltd.  
Noncontrolling Interest [Line Items]  
Ownership percentage 85.00%
Armourfend CAD, LLC  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
XPEL Canada Corp.  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
XPEL B.V.  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
XPEL Germany GmbH  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
XPEL de Mexico S. de R.L. de C.V.  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
XPEL Acquisition Corp.  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
Protex Canada, Inc.  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
Apogee Corp.  
Noncontrolling Interest [Line Items]  
Ownership percentage 100.00%
XML 32 R33.htm IDEA: XBRL DOCUMENT v3.20.1
ACCOUNTS PAYABLE AND ACCRUED LIABILITIES (Tables)
12 Months Ended
Dec. 31, 2019
Accounts Payable and Accrued Liabilities [Abstract]  
Schedule of Accounts Payable and Accrued Liabilities
The following table presents significant accounts payable and accrued liability balances as of the periods ending:
 
December 31, 2019
 
December 31, 2018
Trade payables
$
7,440,965

 
$
3,905,187

Payroll liabilities
1,367,340

 
1,194,237

Contract liabilities
559,232

 
136,213

Other liabilities
829,816

 
1,056,456

 
$
10,197,353

 
$
6,292,093


XML 33 R18.htm IDEA: XBRL DOCUMENT v3.20.1
STOCK OPTIONS
12 Months Ended
Dec. 31, 2019
Share-based Payment Arrangement [Abstract]  
STOCK OPTIONS STOCK OPTIONS
The Company has an Incentive Stock Option Plan (the “Plan”). The Plan provides for options to be granted to the benefit of employees, directors and third parties. The maximum number of shares of Common Stock allocated to and made available to be issued under the Plan shall not exceed 10% of the shares of Common Stock issued and outstanding (on a non-diluted basis) at any time. The exercise price of options granted under the Plan will be determined by the directors, but will at least be equal to the closing trading price of the Common Stock on the last trading day prior to the grant and otherwise the fair market price as determined by the Board of Directors. The term of any option granted shall not exceed ten years. Except as otherwise provided elsewhere in the Stock Option Plan, the options shall be cumulatively exercisable in installments over the option period at a rate to be fixed by the Board of Directors. The Company does not provide financial assistance to any optionee in connection with the exercise of options. At December 31, 2019, there were no options outstanding under the Plan.
XML 34 R10.htm IDEA: XBRL DOCUMENT v3.20.1
PROPERTY AND EQUIPMENT, NET
12 Months Ended
Dec. 31, 2019
Property, Plant and Equipment [Abstract]  
PROPERTY AND EQUIPMENT, NET PROPERTY AND EQUIPMENT, NET
Property and equipment consists of the following:
 
December 31, 2019
 
December 31, 2018
Furniture and fixtures
$
1,168,894

 
$
956,467

Computer equipment
1,151,295

 
939,979

Vehicles
683,213

 
730,765

Equipment
1,648,656

 
1,079,503

Leasehold improvements
1,479,594

 
941,627

Plotters
839,455

 
544,080

Construction in Progress
306,100

 
646,576

Total property and equipment
7,277,207

 
5,838,997

Less: accumulated depreciation
3,262,554

 
2,454,791

Property and equipment, net
$
4,014,653

 
$
3,384,206


Depreciation expense for the years ended December 31, 2019 and 2018 was $915,918 and $735,983, respectively.
XML 35 R14.htm IDEA: XBRL DOCUMENT v3.20.1
DEBT
12 Months Ended
Dec. 31, 2019
Debt Disclosure [Abstract]  
DEBT DEBT
REVOLVING FACILITIES
The Company has an $8,500,000 revolving line of credit agreement with The Bank of San Antonio to support its continuing working capital needs. The Bank of San Antonio has been granted a security interest in substantially all of the Company’s current and future assets. The line of credit has a variable interest rate of the Wall Street Journal prime rate plus 0.75% with a floor of 4.25% and matures on May 5, 2020. The interest rate was 5.50% and 6.25% as of December 31, 2019 and 2018, respectively. As of December 31, 2019 and 2018, no balance was outstanding on this line.
The credit agreement contains customary covenants including covenants relating to complying with applicable laws, delivery of financial statements, payment of taxes and maintaining insurance. The credit agreement also requires that  XPEL must maintain debt service coverage (EBITDA divided by the current portion of long-term debt +interest) of 1.25:1 and debt to tangible net worth of 4.0:1 on a rolling four quarter basis. The credit agreement also contains customary events of default including the failure to make payments of principal and interest, the breach of any covenants, the occurrence of a material adverse change, and certain bankruptcy and insolvency events.
As of December 31, 2019 and 2018, the Company was in compliance with all debt covenants.
XPEL Canada Corp., a wholly owned subsidiary of XPEL, Inc., also has a CAD $4,500,000 revolving line of credit agreement with HSBC Bank Canada to support its continuing working capital needs. The line has a variable interest rate of the HSBC Canada Bank’s prime rate plus 0.25%. The interest rate was 4.20% and 5.75% as of December 31, 2019 and 2018, respectively. As of December 31, 2019 and 2018, no balance was outstanding on this line of credit. This facility is guaranteed by the Company.
NOTES PAYABLE
As part of its acquisition strategy, the Company uses a combination of cash and unsecured non-interest bearing promissory notes payable to fund its business acquisitions. The Company discounts the promissory note to fair value using market interest rates at the time of the acquisition.
Notes payable are summarized as follows:
 
Weighted Average Interest Rate
 
Matures
 
December 31, 2019
 
December 31, 2018
Acquisition notes payable
5.76%
 
2022
 
$
769,507

 
$
1,821,387

 
 
 
 
 
 
 
 
Current portion
 
 
 
 
462,226

 
853,150

Total long-term debt
 
 
 
 
$
307,281

 
$
968,237


The approximate future principal payments on the notes payable are as follows:
2020
$
463,025

2021
300,873

2022
42,969

2023

2024

Thereafter

 
$
806,867


XML 36 R78.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES - Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases (Details)
Dec. 31, 2018
USD ($)
Leases [Abstract]  
2019 $ 869,492
2020 736,169
2021 667,551
2022 601,593
2023 528,427
Thereafter 1,372,388
Total operating leases future minimum payments due $ 4,775,620
XML 37 R74.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES - Schedule of Balance Sheet Information Related to Leases (Details)
Dec. 31, 2019
USD ($)
Leases [Abstract]  
Operating lease right-of-use assets $ 5,079,110
Current portion of operating lease liabilities 1,126,701
Noncurrent portion of operating lease liabilities 4,009,949
Total operating lease liabilities $ 5,136,650
XML 38 R80.htm IDEA: XBRL DOCUMENT v3.20.1
BUSINESS COMBINATIONS - Acquisition Purchase Price (Details) - USD ($)
12 Months Ended
Dec. 20, 2019
Dec. 31, 2019
Dec. 31, 2018
Dec. 31, 2017
Paintshield, Ltd.        
Goodwill   $ 2,406,512 $ 2,322,788 $ 1,856,642
2018 Acquisitions        
Goodwill   2,406,512 2,322,788 $ 1,856,642
2018 Acquisitions        
Paintshield, Ltd.        
Goodwill     576,173  
2018 Acquisitions        
Payments for business combination and asset acquisition     831,934  
Promissory note     998,668  
Forgiveness of debt     88,216  
Business combination and asset acquisition price     1,918,818  
Cash     41,407  
Accounts receivable     155,434  
Inventory     494,663  
Prepaid expenses and other assets     78,631  
Property and equipment     167,622  
Trade name     0  
Acquired patterns     0  
Customer relationships     609,751  
Goodwill     576,173  
Accounts payable     (126,715)  
Other accrued liabilities     (78,148)  
Total net business combination and assets acquired     $ 1,918,818  
Paintshield, Ltd        
Paintshield, Ltd.        
Payments for asset acquisition   127,623    
Promissory note   0    
Forgiveness of debt   0    
Asset acquisition price $ 127,623 127,623    
Cash   0    
Accounts receivable   0    
Inventory   0    
Prepaid expenses and other assets   0    
Property and equipment   5,038    
Trade name   25,918    
Acquired patterns   52,083    
Customer relationships   0    
Goodwill   44,584    
Accounts payable   0    
Other accrued liabilities   0    
Total net assets acquired   127,623    
2018 Acquisitions        
Goodwill   $ 44,584    
XML 39 R70.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES - Income Taxes Provision Difference (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Income Tax Disclosure [Abstract]    
Income before income taxes $ 16,950,428 $ 11,481,305
Statutory rate 21.00% 21.00%
Income statutory rate amount $ 3,559,590 $ 2,411,074
State taxes net of federal benefit 31,446 183,468
Nondeductible/nontaxable items 115,679 0
Foreign tax rate differential 45,994 81,474
Foreign derived intangible income benefit (287,606) 0
Return to provision estimated revision (358,986) 0
Other - net (150,761) 84,057
Income tax expense $ 2,955,356 $ 2,760,073
XML 40 R53.htm IDEA: XBRL DOCUMENT v3.20.1
PROPERTY AND EQUIPMENT, NET - Schedule of Property, Plant and Equipment (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Property, Plant and Equipment [Line Items]    
Property, plant and equipment $ 7,277,207 $ 5,838,997
Accumulated depreciation 3,262,554 2,454,791
Property and equipment, net 4,014,653 3,384,206
Furniture and fixtures    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment 1,168,894 956,467
Computer equipment    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment 1,151,295 939,979
Vehicles    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment 683,213 730,765
Equipment    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment 1,648,656 1,079,503
Leasehold improvements    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment 1,479,594 941,627
Plotters    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment 839,455 544,080
Construction in Progress    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment $ 306,100 $ 646,576
XML 41 R57.htm IDEA: XBRL DOCUMENT v3.20.1
INTANGIBLE ASSETS, NET - Schedule of Future Amortization Expense of Finite-Lived Intangible Assets (Details)
Dec. 31, 2019
USD ($)
Goodwill and Intangible Assets Disclosure [Abstract]  
2020 $ 796,029
2021 703,624
2022 617,107
2023 576,160
2024 461,122
Thereafter $ 666,417
XML 42 R36.htm IDEA: XBRL DOCUMENT v3.20.1
BUSINESS COMBINATIONS (Tables)
12 Months Ended
Dec. 31, 2019
Business Combinations And Asset Acquisitions [Abstract]  
Business Combination Completed by Year-end The Company completed the following acquisitions during the years ended December 31, 2019 and 2018:
Acquisition Date
 
Name/Location/Description
 
Purchase Price
Acquisition Type
 
Acquisition Purpose
April 1, 2018
 
9352-4692, Quebec, Inc., Quebec City, Quebec, Canada - Paint protection and window film installation shop
 
$87,248
Share Purchase
 
Local market expansion
June 1, 2018
 
eShields, LLC, La Verne, CA, USA - Antimicrobial film distributor
 
$496,982
Asset Purchase
 
Product line expansion
August 1, 2018
 
9341-9182 Quebec, Inc., Pointe Claire, Quebec, Canada - Paint protection and window film installation shop
 
$363,239
Share Purchase
 
Local market expansion
August 1, 2018
 
9846905 Canada, Inc., Calgary, Alberta, Canada - Paint protection and window film installation shop
 
$332,798
Share Purchase
 
Local market expansion
November 1, 2018
 
Apogee, Corp., Yilan City, Yilan County, Taiwan - Paint protection and window film distributor
 
$638,552
Share Purchase
 
Local market expansion
December 20, 2019
 
Paintshield, Ltd., Salisbury, Wiltshire, United Kingdom - Paint protection and window film installation shop
 
$127,623
Asset Purchase
 
Local market expansion

Acquisition Purchase Price
The total purchase price for acquisitions completed during the years ended December 31, 2019 and 2018 are as follows:
 
December 31,
 
2019
 
2018
 
Paintshield, Ltd.
 
2018 Acquisitions
Purchase Price
 
 
 
Cash
$
127,623

 
$
831,934

Promissory note

 
998,668

Forgiveness of debt

 
88,216

 
$
127,623

 
$
1,918,818

 
 
 
 
Allocation
 
 
 
Cash
$

 
$
41,407

Accounts receivable

 
155,434

Inventory

 
494,663

Prepaid expenses and other assets

 
78,631

Property and equipment
5,038

 
167,622

Trade name
25,918

 

Acquired patterns
52,083

 

Customer relationships

 
609,751

Goodwill
44,584

 
576,173

Accounts payable

 
(126,715
)
Other accrued liabilities

 
(78,148
)
 
$
127,623

 
$
1,918,818


Pro Forma Results The following unaudited financial information presents our results, including the estimated expenses relating to the amortization of intangibles purchased, as if the acquisitions during the years ended December 31, 2019 and 2018 had occurred on January 1, 2018, respectively:
 
Twelve Months Ended
 
December 31,
 
2019 (Unaudited)
 
2018 (Unaudited)
Revenue
$
130,507,185

 
$
111,048,518

Net income
$
13,981,033

 
$
8,480,919


XML 43 R32.htm IDEA: XBRL DOCUMENT v3.20.1
DEBT (Tables)
12 Months Ended
Dec. 31, 2019
Debt Disclosure [Abstract]  
Schedule of Notes Payable
Notes payable are summarized as follows:
 
Weighted Average Interest Rate
 
Matures
 
December 31, 2019
 
December 31, 2018
Acquisition notes payable
5.76%
 
2022
 
$
769,507

 
$
1,821,387

 
 
 
 
 
 
 
 
Current portion
 
 
 
 
462,226

 
853,150

Total long-term debt
 
 
 
 
$
307,281

 
$
968,237


Schedule of Maturities of Long-term Debt
The approximate future principal payments on the notes payable are as follows:
2020
$
463,025

2021
300,873

2022
42,969

2023

2024

Thereafter

 
$
806,867


XML 44 R11.htm IDEA: XBRL DOCUMENT v3.20.1
INTANGIBLE ASSETS, NET
12 Months Ended
Dec. 31, 2019
Goodwill and Intangible Assets Disclosure [Abstract]  
INTANGIBLE ASSETS, NET INTANGIBLE ASSETS, NET
Intangible assets consists of the following:
 
December 31, 2019
 
December 31, 2018
Trademarks
$
309,395

 
$
289,734

Software
2,288,062

 
1,635,731

Trade name
492,408

 
457,766

Contractual and customer relationships
3,010,480

 
2,947,264

Non-compete
268,459

 
261,914

Other
208,012

 
150,267

Total cost
6,576,816

 
5,742,676

Less: Accumulated amortization
2,756,356

 
1,938,650

Intangible assets, net
$
3,820,460

 
$
3,804,026


Amortization expense for the years ended December 31, 2019 and 2018 was $781,105 and $642,801, respectively. Based on the carrying value of definite-lived intangible assets as of December 31, 2019, we estimate our future amortization expense will be as follows:
2020
$
796,029

2021
703,624

2022
617,107

2023
576,160

2024
461,122

Thereafter
$
666,417


During the year ended December 31, 2019, the Company’s wholly-owned subsidiary, Protex Canada, sold a franchise territory to a new franchisee in Quebec. In connection with this arrangement, the Company closed its Quebec City installation location and recorded an impairment against all previously recognized intangible assets for that location. The Company recorded an impairment loss of $30,480 related to the intangible assets other than goodwill associated with this closed location. This impairment loss is reflected in general and administrative expense on the consolidated statement of income.
XML 45 R15.htm IDEA: XBRL DOCUMENT v3.20.1
EMPLOYEE BENEFIT PLAN
12 Months Ended
Dec. 31, 2019
Retirement Benefits [Abstract]  
EMPLOYEE BENEFIT PLAN EMPLOYEE BENEFIT PLAN
The Company sponsors defined contribution plans for substantially all employees. Annual Company contributions under the plans are discretionary. Company contribution expense during the years ended December 31, 2019 and 2018 was $174,744 and $124,431, respectively.
XML 46 R19.htm IDEA: XBRL DOCUMENT v3.20.1
FAIR VALUE MEASUREMENTS
12 Months Ended
Dec. 31, 2019
Fair Value Disclosures [Abstract]  
FAIR VALUE MEASUREMENTS FAIR VALUE MEASUREMENTS
Financial instruments include cash and cash equivalents (level 1), accounts receivable, accounts payable and long-term debt. The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable and short-term borrowings approximate fair value because of the near-term maturities of these financial instruments. The carrying value of the Company’s notes payable approximates fair value due to the relatively short-term nature and interest rates of the notes. For discussion of the fair value measurements related to goodwill refer to Note 5, Goodwill, of the consolidated financial statements for periods ended December 31, 2019 and December 31, 2018.
The estimated fair value of debt is based on market quotes for instruments with similar terms and remaining maturities (Level 2 inputs and valuation techniques).
ASC 820 prioritizes the inputs to valuation techniques used to measure fair value into the following hierarchy:
Level 1 – Observable inputs such as quoted prices (unadjusted) in active markets for identical assets or liabilities.
Level 2 – Inputs other than the quoted prices in active markets that are observable either directly or indirectly, including: quoted prices for similar assets and liabilities in active markets; quoted prices for identical
or similar assets and liabilities in markets that are not active or other inputs that are observable or can be corroborated by observable market data.
Level 3 – Unobservable inputs that are supported by little or no market data and require the reporting entity to develop its own assumptions.
XML 47 R23.htm IDEA: XBRL DOCUMENT v3.20.1
BUSINESS COMBINATIONS
12 Months Ended
Dec. 31, 2019
Business Combinations And Asset Acquisitions [Abstract]  
BUSINESS COMBINATIONS BUSINESS COMBINATIONS

Business combinations completed before year-end - The Company completed the following acquisitions during the years ended December 31, 2019 and 2018:
Acquisition Date
 
Name/Location/Description
 
Purchase Price
Acquisition Type
 
Acquisition Purpose
April 1, 2018
 
9352-4692, Quebec, Inc., Quebec City, Quebec, Canada - Paint protection and window film installation shop
 
$87,248
Share Purchase
 
Local market expansion
June 1, 2018
 
eShields, LLC, La Verne, CA, USA - Antimicrobial film distributor
 
$496,982
Asset Purchase
 
Product line expansion
August 1, 2018
 
9341-9182 Quebec, Inc., Pointe Claire, Quebec, Canada - Paint protection and window film installation shop
 
$363,239
Share Purchase
 
Local market expansion
August 1, 2018
 
9846905 Canada, Inc., Calgary, Alberta, Canada - Paint protection and window film installation shop
 
$332,798
Share Purchase
 
Local market expansion
November 1, 2018
 
Apogee, Corp., Yilan City, Yilan County, Taiwan - Paint protection and window film distributor
 
$638,552
Share Purchase
 
Local market expansion
December 20, 2019
 
Paintshield, Ltd., Salisbury, Wiltshire, United Kingdom - Paint protection and window film installation shop
 
$127,623
Asset Purchase
 
Local market expansion

The total purchase price for acquisitions completed during the years ended December 31, 2019 and 2018 are as follows:
 
December 31,
 
2019
 
2018
 
Paintshield, Ltd.
 
2018 Acquisitions
Purchase Price
 
 
 
Cash
$
127,623

 
$
831,934

Promissory note

 
998,668

Forgiveness of debt

 
88,216

 
$
127,623

 
$
1,918,818

 
 
 
 
Allocation
 
 
 
Cash
$

 
$
41,407

Accounts receivable

 
155,434

Inventory

 
494,663

Prepaid expenses and other assets

 
78,631

Property and equipment
5,038

 
167,622

Trade name
25,918

 

Acquired patterns
52,083

 

Customer relationships

 
609,751

Goodwill
44,584

 
576,173

Accounts payable

 
(126,715
)
Other accrued liabilities

 
(78,148
)
 
$
127,623

 
$
1,918,818


Intangible assets acquired in the Paintshield acquisition have a weighted average useful life of 2 years. Intangible assets acquired in 2018 have a weighted average useful life of 9 years.
Goodwill for these acquisitions relates to the expansion into new geographical areas as well as the addition of a new distribution channel. The goodwill also represents the acquired employee knowledge of the various
markets, distribution knowledge by the employees of the acquired businesses, as well as the expected synergies resulting from the acquisitions.

Acquisition costs incurred related to these acquisitions were immaterial and were included in selling, general and administrative expenses.
The acquired companies were consolidated into our financial statements on their respective acquisition dates. Due to the timing of the transaction, the aggregate revenue and operating income (loss) of the Paintshield acquisition were immaterial to our 2019 consolidated financial statements. The aggregate revenue and operating income (loss) of our 2018 acquisitions consolidated into our 2018 consolidated financial statements from the respective dates of acquisition were $613,701 and $43,030, respectively. The following unaudited financial information presents our results, including the estimated expenses relating to the amortization of intangibles purchased, as if the acquisitions during the years ended December 31, 2019 and 2018 had occurred on January 1, 2018, respectively:
 
Twelve Months Ended
 
December 31,
 
2019 (Unaudited)
 
2018 (Unaudited)
Revenue
$
130,507,185

 
$
111,048,518

Net income
$
13,981,033

 
$
8,480,919


The pro forma unaudited results do not purport to be indicative of the results which would have been obtained had the acquisition been completed as of the beginning of the earliest period presented or of results that may be obtained in the future. In addition, they do not include any benefits that may result from the acquisition due to synergies that may be derived from the elimination of any duplicative costs.
XML 48 R27.htm IDEA: XBRL DOCUMENT v3.20.1
REVENUE (Tables)
12 Months Ended
Dec. 31, 2019
Revenue from Contract with Customer [Abstract]  
Schedule of Transactions Within Contract Liabilities
The following table summarizes transactions included within contract liabilities for the years ended December 31, 2019 and 2018, respectively.
Balance, December 31, 2017
$
1,701,356

Revenue recognized related to payments included in the December 31, 2017 balance
(1,701,356
)
Balance, Payments received for which performance obligations have not been satisfied
136,213

Effect of Foreign Currency Translation

Balance, December 31, 2018
$
136,213

Revenue recognized related to payments included in the December 31, 2018 balance
(115,670
)
Payments received for which performance obligations have not been satisfied
537,683

Effect of Foreign Currency Translation
1,006

Balance, December 31, 2019
$
559,232


Disaggregation of Revenue
The table below sets forth the disaggregation of revenue by product category for the years ended December 31,
 
2019
 
2018
Product Revenue
 
 
 
Paint protection film
$
97,341,865

 
$
85,495,382

Window film
11,384,437

 
7,309,773

Other
3,478,437

 
2,721,195

Total
112,204,739

 
95,526,350

 
 
 
 
Service Revenue
 
 
 
Software
$
3,263,391

 
$
2,566,960

Cutbank credits
7,253,610

 
6,197,250

Installation labor
6,620,527

 
5,211,633

Training
590,614

 
418,421

Total
17,728,142

 
14,394,264

 
 
 
 
Total
$
129,932,881

 
$
109,920,614


Revenue Estimate by Geographic Areas The following table represents our estimate of sales by geographic regions based on our understanding of ultimate product destination based on customer interactions, customer locations and other factors:
 
Twelve Months Ended
December 31,
 
2019
 
2018
United States
$
60,452,238

 
$
46,077,624

China
30,490,859

 
32,279,335

Canada
17,912,548

 
15,146,869

Continental Europe
7,419,524

 
5,734,925

United Kingdom
3,784,535

 
2,725,925

Asia Pacific
4,370,156

 
2,754,495

Latin America
2,098,873

 
1,799,180

Middle East/Africa
3,149,235

 
2,806,502

Other
254,913

 
595,759

Total
$
129,932,881

 
$
109,920,614


XML 49 R7.htm IDEA: XBRL DOCUMENT v3.20.1
Consolidated Statements of Cash Flows - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Cash flows from operating activities    
Net income $ 13,995,072 $ 8,721,232
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation of property, plant and equipment 915,918 735,983
Amortization of intangible assets 781,105 642,801
Impairment expense 66,364 0
(Gain) loss on sale of property and equipment (11,298) 25,733
Bad debt expense 242,091 190,230
Deferred income tax 117,328 (86,218)
Accretion on notes payable 61,316 43,416
Changes in current assets and liabilities:    
Accounts receivable (1,773,371) (261,256)
Inventory, net (4,251,134) 11,148
Prepaid expenses and other current assets (1,653,420) 132,682
Income tax receivable (93,611) 0
Change in operating lease liabilities 32,576  
Accounts payable and accrued liabilities 3,877,024 (3,635,246)
Income tax payable (1,340,441) 276,280
Net cash provided by operating activities 10,965,519 6,796,785
Cash flows used in investing activities    
Purchase of property, plant and equipment (1,569,823) (2,030,314)
Proceeds from sale of property and equipment 68,457 155,277
Acquisitions, net of cash acquired and notes payable (127,623) (831,934)
Development or purchase of intangible assets (674,581) (386,985)
Net cash used in investing activities (2,303,570) (3,093,956)
Cash flows from financing activities    
Net repayments on revolving credit agreement 0 (2,000,000)
Repayment of bank loan payable 0 (440,126)
Repayments of notes payable (1,143,240) (658,055)
Net cash used in financing activities (1,143,240) (3,098,181)
Net change in cash and cash equivalents 7,518,709 604,648
Foreign exchange impact on cash and cash equivalents 11,038 (132,326)
Increase in cash and cash equivalents during the period 7,529,747 472,322
Cash and cash equivalents at beginning of year 3,971,226 3,498,904
Cash and cash equivalents at end of year 11,500,973 3,971,226
Supplemental schedule of non-cash activities    
Notes payable issued for acquisitions 0 998,668
Forgiveness of debt for acquired entities 0 88,216
Supplemental cash flow information    
Cash paid for income taxes 4,079,962 2,514,727
Cash paid for interest $ 17,850 $ 86,417
XML 50 R3.htm IDEA: XBRL DOCUMENT v3.20.1
Consolidated Balance Sheets (Parenthetical) - $ / shares
Dec. 31, 2019
Dec. 31, 2018
Statement of Financial Position [Abstract]    
Preferred stock, par value (in dollars per share) $ 0.001 $ 0.001
Preferred stock shares authorized (in shares) 10,000,000 10,000,000
Preferred stock shares issued (in shares) 0 0
Preferred stock shares outstanding (in shares) 0 0
Common stock, par value (in dollars per share) $ 0.001 $ 0.001
Common stock shares authorized (in shares) 100,000,000 100,000,000
Common stock shares issued (in shares) 27,612,597 27,612,597
Common stock shares outstanding (in shares) 27,612,597 27,612,597
XML 51 R61.htm IDEA: XBRL DOCUMENT v3.20.1
DEBT - Narrative (Details) - Line of Credit - Revolving Credit Facility
12 Months Ended
Dec. 31, 2019
CAD ($)
Dec. 31, 2019
USD ($)
Dec. 31, 2018
USD ($)
The Bank of San Antonio      
Line of Credit Facility [Line Items]      
Maximum borrowing capacity   $ 8,500,000  
Line of credit facility interest rate 5.50% 5.50% 6.25%
Amount outstanding   $ 0 $ 0
Covenant, debt service coverage ratio required, minimum 1.25 1.25  
Covenant, debt to intangible net worth ratio required, minimum 4.0 4.0  
HSBC Bank Canada      
Line of Credit Facility [Line Items]      
Maximum borrowing capacity $ 4,500,000    
Line of credit facility interest rate 4.20% 4.20% 5.75%
Amount outstanding   $ 0 $ 0
Prime Rate | The Bank of San Antonio      
Line of Credit Facility [Line Items]      
Basis spread on prime rate 0.75%    
Debt instrument floor rate 4.25%    
Prime Rate | HSBC Bank Canada      
Line of Credit Facility [Line Items]      
Basis spread on prime rate 0.25%    
XML 52 R65.htm IDEA: XBRL DOCUMENT v3.20.1
ACCOUNTS PAYABLE AND ACCRUED LIABILITIES - Schedule of Accounts Payable and Accrued Liability (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Dec. 31, 2017
Accounts Payable and Accrued Liabilities [Abstract]      
Trade payables $ 7,440,965 $ 3,905,187  
Payroll liabilities 1,367,340 1,194,237  
Contract liabilities 559,232 136,213 $ 1,701,356
Other liabilities 829,816 1,056,456  
Accounts payable and accrued liabilities $ 10,197,353 $ 6,292,093  
XML 53 R69.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES - Narrative (Details) - USD ($)
12 Months Ended
Dec. 22, 2017
Dec. 31, 2018
Dec. 31, 2019
Income Tax Disclosure [Abstract]      
Deferred tax balance remeasurement $ 100,000    
Operating loss carryforwards     $ 841,003
Income tax benefit related to foreign derived intangible income   $ 200,000  
XML 54 R46.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Advertising Costs (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Accounting Policies [Abstract]    
Advertising costs $ 908,585 $ 572,218
XML 55 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 56 R42.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Goodwill (Details)
12 Months Ended
Dec. 31, 2019
USD ($)
installation_location
Dec. 31, 2018
USD ($)
Dec. 31, 2017
USD ($)
Goodwill [Line Items]      
Number of locations closed | installation_location 1    
Goodwill $ 2,406,512 $ 2,322,788 $ 1,856,642
United States      
Goodwill [Line Items]      
Goodwill 617,334 617,334  
Canada      
Goodwill [Line Items]      
Goodwill 1,740,884 1,701,826  
Other      
Goodwill [Line Items]      
Goodwill $ 48,294 $ 3,628  
XML 57 R59.htm IDEA: XBRL DOCUMENT v3.20.1
GOODWILL - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Goodwill and Intangible Assets Disclosure [Abstract]    
Goodwill impairment loss $ 35,884 $ 0
XML 58 R51.htm IDEA: XBRL DOCUMENT v3.20.1
REVENUE - Revenue Estimate By Geographic Area (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Disaggregation of Revenue [Line Items]    
Total revenue $ 129,932,881 $ 109,920,614
United States    
Disaggregation of Revenue [Line Items]    
Total revenue 60,452,238 46,077,624
China    
Disaggregation of Revenue [Line Items]    
Total revenue 30,490,859 32,279,335
Canada    
Disaggregation of Revenue [Line Items]    
Total revenue 17,912,548 15,146,869
Continental Europe    
Disaggregation of Revenue [Line Items]    
Total revenue 7,419,524 5,734,925
United Kingdom    
Disaggregation of Revenue [Line Items]    
Total revenue 3,784,535 2,725,925
Asia Pacific    
Disaggregation of Revenue [Line Items]    
Total revenue 4,370,156 2,754,495
Latin America    
Disaggregation of Revenue [Line Items]    
Total revenue 2,098,873 1,799,180
Middle East/Africa    
Disaggregation of Revenue [Line Items]    
Total revenue 3,149,235 2,806,502
Other    
Disaggregation of Revenue [Line Items]    
Total revenue $ 254,913 $ 595,759
XML 59 R55.htm IDEA: XBRL DOCUMENT v3.20.1
INTANGIBLE ASSETS, NET - Schedule of Intangible Assets (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross $ 6,576,816 $ 5,742,676
Accumulated amortization 2,756,356 1,938,650
Intangible assets, net 3,820,460 3,804,026
Trademarks    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross 309,395 289,734
Software    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross 2,288,062 1,635,731
Trade name    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross 492,408 457,766
Contractual and customer relationships    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross 3,010,480 2,947,264
Non-compete    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross 268,459 261,914
Other    
Finite-Lived Intangible Assets [Line Items]    
Intangible assets, gross $ 208,012 $ 150,267
XML 60 R76.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES - Schedule of Weighted Average Remaining Lease Term and Discount Rate Information (Details)
Dec. 31, 2019
Leases [Abstract]  
Weighted-average remaining lease term (in years) 5 years 7 months 6 days
Weighted-average discount rate 5.84%
XML 61 R82.htm IDEA: XBRL DOCUMENT v3.20.1
BUSINESS COMBINATIONS - Pro Forma Results (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Paintshield, Ltd    
Business Acquisition [Line Items]    
Revenue $ 130,507,185  
Net income $ 13,981,033  
2018 Acquisitions    
Business Acquisition [Line Items]    
Revenue   $ 111,048,518
Net income   $ 8,480,919
XML 62 R72.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES - Components of Deferred Income Tax Assets (Liabilities) (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
DEFERRED TAX ASSETS:    
Allowance for Doubtful Accounts $ 31,073 $ 161
263(A) Adjustment 31,427 17,421
Accrued Expenses 212 9,485
Inventory Reserve 9,725 34,978
Accretion of Acquisition Notes 0 8,156
Unrealized loss 6,282 0
State Tax Credit 27,867 48,770
NOL Carryforward and Other 162,005 249,772
Total deferred tax assets 268,591 368,743
DEFERRED TAX LIABILITIES:    
Fixed and Intangible Assets 860,592 824,822
Unrealized Gain 12,713 14,146
Accretion 0 8,639
Total deferred tax liabilities 873,305 847,607
Total net deferred tax liabilities $ (604,714) $ (478,864)
XML 63 R13.htm IDEA: XBRL DOCUMENT v3.20.1
INVENTORIES
12 Months Ended
Dec. 31, 2019
Inventory Disclosure [Abstract]  
INVENTORIES INVENTORIES
The components of inventory are summarized as follows:
 
December 31, 2019
 
December 31, 2018
Film and film based products
$
13,538,610

 
$
9,399,067

Other products
1,226,708

 
1,264,862

Packaging and supplies
496,661

 
320,738

Inventory reserve
(120,826
)
 
(185,056
)
 
$
15,141,153

 
$
10,799,611


XML 64 R17.htm IDEA: XBRL DOCUMENT v3.20.1
CAPITAL STOCK
12 Months Ended
Dec. 31, 2019
Equity [Abstract]  
CAPITAL STOCK CAPITAL STOCK
Shares issued and outstanding at both December 31, 2019 and 2018 were 27,612,597. Par value of these shares for these same dates was $27,613.
XML 65 R34.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES (Tables)
12 Months Ended
Dec. 31, 2019
Income Tax Disclosure [Abstract]  
Schedule of Income before Income Tax
Income before income taxes classified by source of income was as follows:
 
2019

2018
Domestic
$
15,375,731

 
$
10,008,013

International
1,574,697

 
1,473,292

Income before income taxes
$
16,950,428

 
$
11,481,305


Schedule of Effective Income Tax Rate Reconciliation
The provision for income taxes differs from the United States federal statutory rate as follows:
 
2019

2018
Income before income taxes
$
16,950,428

 
$
11,481,305

Statutory rate
21
%
 
21
%
 
3,559,590

 
2,411,074

 

 


State taxes net of federal benefit
31,446

 
183,468

Nondeductible/nontaxable items
115,679

 

Foreign tax rate differential
45,994

 
81,474

Foreign derived intangible income benefit
(287,606
)
 

Return to provision estimated revision
(358,986
)
 

Other - net
(150,761
)
 
84,057

Income tax expense
$
2,955,356

 
$
2,760,073


Schedule of Components of Income Tax Expense (Benefit)
The components of the income tax provision (benefit) are as follows:
 
Years ended December 31
 
2019

2018
Current Income Tax Expense
 
 
 
Federal
$
2,412,157

 
$
2,182,415

Foreign
518,528

 
431,638

State
3,068

 
232,238

Total Current Income Tax Expense
2,933,753

 
2,846,291

Deferred Income Tax Expense/(Benefit)

 

Federal
99,870

 
(65,801
)
Foreign
(78,267
)
 
(20,417
)
Total Deferred Income Tax Expense/(Benefit)
21,603

 
(86,218
)
Total
$
2,955,356

 
$
2,760,073


Schedule of Deferred Tax Assets (Liabilities)
Deferred income taxes reflect the net tax effects of temporary differences between the carrying amount of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes. Significant components of the Company’s net deferred income taxes are as follows:
 
Years ended December 31
 
2019

2018
DEFERRED TAX ASSETS:
 
 
 
Allowance for Doubtful Accounts
$
31,073

 
$
161

263(A) Adjustment
31,427

 
17,421

Accrued Expenses
212

 
9,485

Inventory Reserve
9,725

 
34,978

Accretion of Acquisition Notes

 
8,156

Unrealized loss
6,282

 

State Tax Credit
27,867

 
48,770

NOL Carryforward and Other
162,005

 
249,772

Total deferred tax assets
268,591

 
368,743

 

 

DEFERRED TAX LIABILITIES:

 

Fixed and Intangible Assets
$
860,592

 
$
824,822

Unrealized Gain
12,713

 
14,146

Accretion

 
8,639

Total deferred tax liabilities
873,305

 
847,607

Total net deferred tax liabilities
$
(604,714
)
 
$
(478,864
)

XML 66 R30.htm IDEA: XBRL DOCUMENT v3.20.1
GOODWILL (Tables)
12 Months Ended
Dec. 31, 2019
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of Goodwill
The following table presents geographic Goodwill by region as of December 31:
 
2019
 
2018
United States
$
617,334

 
$
617,334

Canada
1,740,884

 
1,701,826

Other
48,294

 
3,628

Consolidated
$
2,406,512

 
$
2,322,788


The following table summarizes changes in the carrying amounts of goodwill for the years ended December 31, 2019 and 2018:
Balance at December 31, 2017
$
1,856,642

Additions
576,173

Foreign currency translation
(110,027
)
Balance at December 31, 2018
$
2,322,788

 
 
Balance at December 31, 2018
$
2,322,788

Additions
44,584

Impairment
(35,884
)
Foreign currency translation
75,024

Balance at December 31, 2019
$
2,406,512


XML 67 R38.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Segment Reporting (Details)
12 Months Ended
Dec. 31, 2019
segment
Accounting Policies [Abstract]  
Number of operating segments 1
XML 68 R9.htm IDEA: XBRL DOCUMENT v3.20.1
REVENUE
12 Months Ended
Dec. 31, 2019
Revenue from Contract with Customer [Abstract]  
REVENUE REVENUE
Revenue recognition
The Company recognizes revenue when it satisfies a performance obligation by transferring control of the promised goods and services to a customer, in an amount that reflects the consideration that it expects to receive in exchange for those goods or services. This is achieved through applying the following five-step model:
Identification of the contract, or contracts, with a customer;
Identification of the performance obligations in the contract;
Determination of the transaction price;
Allocation of the transaction price to the performance obligations in the contract; and
Recognition of revenue when, or as, the Company satisfies a performance obligation.
The Company generates substantially all of its revenue from contracts with customers, whether formal or implied. Sales taxes collected from customers are remitted to the appropriate taxing jurisdictions and are excluded from sales revenue as the Company considers itself a pass-through conduit for collecting and remitting sales taxes, with the exception of taxes assessed during the procurement process of select inventories. Shipping and handling costs are included in cost of sales.
Revenue from product and services sales are recognized when control of the goods is transferred to the customer which occurs at a point in time typically upon shipment to the customer or completion of the service. This standard applies to all contracts with customers, except for contracts that are within the scope of other standards, such as leases, insurance, collaboration arrangements and financial instruments.
Based upon the nature of the products the Company sells, its customers have limited rights of return which are immaterial. Discounts provided by the Company to customers at the time of sale are recognized as a reduction in sales as the products are sold.
Warranty obligations associated with the sale of our products are assurance-type warranties that are a guarantee of the product’s intended functionality and, therefore, do not represent a distinct performance obligation within the context of the contract. Warranty expense is included in cost of sales.
We apply a practical expedient to expense direct costs of obtaining a contract when incurred because the amortization period would have been one year or less.
Under its contracts with customers, the Company stands ready to deliver product upon receipt of a purchase order. Accordingly, the Company has no performance obligations under its contracts until its customers submit a purchase order. The Company does not enter into commitments to provide goods or services that have terms greater than one year. In limited cases, the Company does require payment in advance of shipping product. Typically, product is shipped within a few days after prepayment is received. These prepayments are recorded as contract liabilities on the consolidated balance sheet and are included in accounts payable and accrued liabilities (Note 9). As the performance obligation is part of a contract that has an original expected duration of less than one year, the Company has applied the practical expedient under ASC 606 to omit disclosures regarding remaining performance obligations.
The following table summarizes transactions included within contract liabilities for the years ended December 31, 2019 and 2018, respectively.
Balance, December 31, 2017
$
1,701,356

Revenue recognized related to payments included in the December 31, 2017 balance
(1,701,356
)
Balance, Payments received for which performance obligations have not been satisfied
136,213

Effect of Foreign Currency Translation

Balance, December 31, 2018
$
136,213

Revenue recognized related to payments included in the December 31, 2018 balance
(115,670
)
Payments received for which performance obligations have not been satisfied
537,683

Effect of Foreign Currency Translation
1,006

Balance, December 31, 2019
$
559,232


When the Company transfers goods or services to a customer, payment is due, subject to normal terms, and is not conditional on anything other than the passage of time. Typical payment terms range from due upon receipt to 30 days, depending on the type of customer and relationship. At contract inception, the Company expects that the period of time between the transfer of goods to the customer and when the customer pays for those goods will be less than one year, which is consistent with the Company’s standard payment terms. Accordingly, the Company has elected the practical expedient under ASC 606 to not adjust for the effects of a significant financing component. As such, these amounts are recorded as receivables and not contract assets.
The table below sets forth the disaggregation of revenue by product category for the years ended December 31,
 
2019
 
2018
Product Revenue
 
 
 
Paint protection film
$
97,341,865

 
$
85,495,382

Window film
11,384,437

 
7,309,773

Other
3,478,437

 
2,721,195

Total
112,204,739

 
95,526,350

 
 
 
 
Service Revenue
 
 
 
Software
$
3,263,391

 
$
2,566,960

Cutbank credits
7,253,610

 
6,197,250

Installation labor
6,620,527

 
5,211,633

Training
590,614

 
418,421

Total
17,728,142

 
14,394,264

 
 
 
 
Total
$
129,932,881

 
$
109,920,614


Because many of our international customers require us to ship their orders to freight forwarders located in the United States, we cannot be certain about the ultimate destination of the product. The following table represents our estimate of sales by geographic regions based on our understanding of ultimate product destination based on customer interactions, customer locations and other factors:
 
Twelve Months Ended
December 31,
 
2019
 
2018
United States
$
60,452,238

 
$
46,077,624

China
30,490,859

 
32,279,335

Canada
17,912,548

 
15,146,869

Continental Europe
7,419,524

 
5,734,925

United Kingdom
3,784,535

 
2,725,925

Asia Pacific
4,370,156

 
2,754,495

Latin America
2,098,873

 
1,799,180

Middle East/Africa
3,149,235

 
2,806,502

Other
254,913

 
595,759

Total
$
129,932,881

 
$
109,920,614


Our largest customer (the China Distributor) accounted for 23.5% and 29.2% of our net sales during the year ended December 31, 2019 and 2018, respectively.
XML 69 R5.htm IDEA: XBRL DOCUMENT v3.20.1
Consolidated Statements of Comprehensive Income - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Other comprehensive income    
Net income $ 13,995,072 $ 8,721,232
Foreign currency translation 285,193 (603,673)
Total comprehensive income including portion attributable to non-controlling interest 14,280,265 8,117,559
Total comprehensive income attributable to stockholders of the company 14,258,916 8,119,162
Total comprehensive income attributable to non-controlling interest $ 21,349 $ (1,603)
XML 70 R1.htm IDEA: XBRL DOCUMENT v3.20.1
Cover Page - USD ($)
12 Months Ended
Dec. 31, 2019
Mar. 16, 2020
Jun. 28, 2019
Cover page.      
Document Type 10-K    
Document Annual Report true    
Document Period End Date Dec. 31, 2019    
Document Transition Report false    
Entity File Number 001-38858    
Entity Registrant Name XPEL, INC.    
Entity Incorporation, State or Country Code NV    
Entity Tax Identification Number 20-1117381    
Entity Address, Address Line One 618 W. Sunset Road    
Entity Address, City or Town San Antonio    
Entity Address, State or Province TX    
Entity Address, Postal Zip Code 78216    
City Area Code 210    
Local Phone Number 678-3700    
Title of 12(b) Security Common Stock, par value $0.001 per share    
Trading Symbol XPEL    
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 true    
Entity Ex Transition Period true    
Entity Shell Company false    
Entity Public Float     $ 89,396,831
Entity Common Stock, Shares Outstanding   27,612,597  
Documents Incorporated by Reference
Document
Parts into which Incorporated
Portions of the registrant’s Proxy Statement relating to the 2020 Annual Meeting of stockholders to be held on May 7, 2020.
Part III

   
Amendment Flag false    
Current Fiscal Year End Date --12-31    
Document Fiscal Year Focus 2019    
Document Fiscal Period Focus FY    
Entity Central Index Key 0001767258    
XML 71 a201910-kxpel_htm.xml IDEA: XBRL DOCUMENT 0001767258 2019-01-01 2019-12-31 0001767258 2020-03-16 0001767258 2019-06-28 0001767258 2019-12-31 0001767258 2018-12-31 0001767258 us-gaap:ProductMember 2018-01-01 2018-12-31 0001767258 2018-01-01 2018-12-31 0001767258 us-gaap:ServiceMember 2018-01-01 2018-12-31 0001767258 us-gaap:ServiceMember 2019-01-01 2019-12-31 0001767258 us-gaap:ProductMember 2019-01-01 2019-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2018-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2018-01-01 2018-12-31 0001767258 us-gaap:CommonStockMember 2018-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2018-01-01 2018-12-31 0001767258 us-gaap:AdditionalPaidInCapitalMember 2018-12-31 0001767258 us-gaap:AdditionalPaidInCapitalMember 2017-12-31 0001767258 us-gaap:RetainedEarningsMember 2018-01-01 2018-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2018-12-31 0001767258 us-gaap:CommonStockMember 2017-12-31 0001767258 us-gaap:ParentMember 2019-01-01 2019-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2019-01-01 2019-12-31 0001767258 us-gaap:ParentMember 2018-01-01 2018-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2017-12-31 0001767258 us-gaap:ParentMember 2018-12-31 0001767258 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001767258 us-gaap:RetainedEarningsMember 2019-12-31 0001767258 us-gaap:RetainedEarningsMember 2017-12-31 0001767258 us-gaap:RetainedEarningsMember 2019-01-01 2019-12-31 0001767258 us-gaap:ParentMember 2017-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-01-01 2019-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001767258 2017-12-31 0001767258 us-gaap:ParentMember 2019-12-31 0001767258 us-gaap:NoncontrollingInterestMember 2019-12-31 0001767258 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2017-12-31 0001767258 us-gaap:RetainedEarningsMember 2018-12-31 0001767258 xpel:LargestCustomerMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-12-31 0001767258 xpel:XPELDeMexicoS.DeR.L.DeC.V.Member 2019-12-31 0001767258 xpel:ApogeeCorp.Member 2019-12-31 0001767258 xpel:XPELAcquisitionCorp.Member 2019-12-31 0001767258 xpel:XPELGermanyGmbHMember 2019-12-31 0001767258 xpel:XPELB.VMember 2019-12-31 0001767258 xpel:ArmourfendCADLLCMember 2019-12-31 0001767258 xpel:ProtexCanadaInc.Member 2019-12-31 0001767258 xpel:XPELCanadaCorp.Member 2019-12-31 0001767258 xpel:XPELLtd.Member 2019-12-31 0001767258 country:CA 2018-12-31 0001767258 xpel:OtherGeographicRegionMember 2018-12-31 0001767258 country:CA 2019-12-31 0001767258 country:US 2018-12-31 0001767258 country:US 2019-12-31 0001767258 xpel:OtherGeographicRegionMember 2019-12-31 0001767258 srt:EuropeMember 2019-12-31 0001767258 srt:EuropeMember 2018-12-31 0001767258 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2019-01-01 2019-12-31 0001767258 us-gaap:SoftwareDevelopmentMember 2019-01-01 2019-12-31 0001767258 us-gaap:FurnitureAndFixturesMember 2019-01-01 2019-12-31 0001767258 us-gaap:TrademarksMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:EquipmentMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:ComputerEquipmentMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:TradeNamesMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2019-01-01 2019-12-31 0001767258 us-gaap:VehiclesMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:EquipmentMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:ComputerEquipmentMember 2019-01-01 2019-12-31 0001767258 us-gaap:OtherIntangibleAssetsMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:NoncompeteAgreementsMember 2019-01-01 2019-12-31 0001767258 srt:MaximumMember us-gaap:TradeNamesMember 2019-01-01 2019-12-31 0001767258 srt:MinimumMember us-gaap:NoncompeteAgreementsMember 2019-01-01 2019-12-31 0001767258 xpel:ComputerEquipmentPlotterMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueTrainingMember 2019-01-01 2019-12-31 0001767258 xpel:ProductRevenueOtherMember 2018-01-01 2018-12-31 0001767258 xpel:ServiceRevenueTrainingMember 2018-01-01 2018-12-31 0001767258 xpel:ProductRevenueOtherMember 2019-01-01 2019-12-31 0001767258 xpel:ProductRevenuePaintProtectionFilmMember 2019-01-01 2019-12-31 0001767258 xpel:ProductRevenueWindowFilmMember 2018-01-01 2018-12-31 0001767258 xpel:ProductRevenuePaintProtectionFilmMember 2018-01-01 2018-12-31 0001767258 xpel:ServiceRevenueSoftwareMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueSoftwareMember 2018-01-01 2018-12-31 0001767258 xpel:ServiceRevenueInstallationLaborMember 2018-01-01 2018-12-31 0001767258 xpel:ProductRevenueWindowFilmMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueInstallationLaborMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueCutbankCreditsMember 2019-01-01 2019-12-31 0001767258 xpel:ServiceRevenueCutbankCreditsMember 2018-01-01 2018-12-31 0001767258 xpel:TheChinaDistributorMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-12-31 0001767258 xpel:TheChinaDistributorMember us-gaap:RevenueFromContractWithCustomerMember us-gaap:CustomerConcentrationRiskMember 2018-01-01 2018-12-31 0001767258 country:CA 2018-01-01 2018-12-31 0001767258 srt:LatinAmericaMember 2018-01-01 2018-12-31 0001767258 xpel:OtherGeographicRegionMember 2018-01-01 2018-12-31 0001767258 srt:LatinAmericaMember 2019-01-01 2019-12-31 0001767258 country:CN 2018-01-01 2018-12-31 0001767258 country:CN 2019-01-01 2019-12-31 0001767258 country:CA 2019-01-01 2019-12-31 0001767258 srt:AsiaPacificMember 2019-01-01 2019-12-31 0001767258 srt:AsiaPacificMember 2018-01-01 2018-12-31 0001767258 country:US 2018-01-01 2018-12-31 0001767258 srt:EuropeMember 2018-01-01 2018-12-31 0001767258 country:US 2019-01-01 2019-12-31 0001767258 xpel:MiddleEastAfricaMember 2018-01-01 2018-12-31 0001767258 country:GB 2018-01-01 2018-12-31 0001767258 xpel:MiddleEastAfricaMember 2019-01-01 2019-12-31 0001767258 country:GB 2019-01-01 2019-12-31 0001767258 xpel:OtherGeographicRegionMember 2019-01-01 2019-12-31 0001767258 srt:EuropeMember 2019-01-01 2019-12-31 0001767258 us-gaap:ComputerEquipmentMember 2018-12-31 0001767258 xpel:ComputerEquipmentPlotterMember 2019-12-31 0001767258 us-gaap:EquipmentMember 2018-12-31 0001767258 us-gaap:FurnitureAndFixturesMember 2018-12-31 0001767258 xpel:ComputerEquipmentPlotterMember 2018-12-31 0001767258 us-gaap:LeaseholdImprovementsMember 2018-12-31 0001767258 us-gaap:VehiclesMember 2018-12-31 0001767258 us-gaap:LeaseholdImprovementsMember 2019-12-31 0001767258 us-gaap:VehiclesMember 2019-12-31 0001767258 us-gaap:EquipmentMember 2019-12-31 0001767258 us-gaap:FurnitureAndFixturesMember 2019-12-31 0001767258 us-gaap:ConstructionInProgressMember 2019-12-31 0001767258 us-gaap:ConstructionInProgressMember 2018-12-31 0001767258 us-gaap:ComputerEquipmentMember 2019-12-31 0001767258 us-gaap:TrademarksMember 2018-12-31 0001767258 us-gaap:OtherIntangibleAssetsMember 2019-12-31 0001767258 us-gaap:NoncompeteAgreementsMember 2019-12-31 0001767258 us-gaap:CustomerRelationshipsMember 2018-12-31 0001767258 us-gaap:TrademarksMember 2019-12-31 0001767258 us-gaap:TradeNamesMember 2018-12-31 0001767258 us-gaap:SoftwareDevelopmentMember 2018-12-31 0001767258 us-gaap:NoncompeteAgreementsMember 2018-12-31 0001767258 us-gaap:OtherIntangibleAssetsMember 2018-12-31 0001767258 us-gaap:SoftwareDevelopmentMember 2019-12-31 0001767258 us-gaap:TradeNamesMember 2019-12-31 0001767258 us-gaap:CustomerRelationshipsMember 2019-12-31 0001767258 xpel:AcquisitionNotesPayableDue2022Member 2019-12-31 0001767258 xpel:AcquisitionNotesPayableDue2022Member 2018-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:TheBankOfSanAntonioMember us-gaap:LineOfCreditMember us-gaap:PrimeRateMember 2019-01-01 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:HSBCBankCanadaMember us-gaap:LineOfCreditMember 2018-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:TheBankOfSanAntonioMember us-gaap:LineOfCreditMember 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:HSBCBankCanadaMember us-gaap:LineOfCreditMember 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:HSBCBankCanadaMember us-gaap:LineOfCreditMember us-gaap:PrimeRateMember 2019-01-01 2019-12-31 0001767258 us-gaap:RevolvingCreditFacilityMember xpel:TheBankOfSanAntonioMember us-gaap:LineOfCreditMember 2018-12-31 0001767258 us-gaap:EmployeeStockOptionMember 2019-01-01 2019-12-31 0001767258 2017-12-22 2017-12-22 0001767258 2017-03-31 0001767258 xpel:A2018AcquisitionsMember 2018-01-01 2018-12-31 0001767258 xpel:PaintshieldLtdMember 2019-01-01 2019-12-31 0001767258 xpel:A2018AcquisitionsMember 2018-01-01 2018-12-31 0001767258 xpel:PaintshieldLtdMember 2019-01-01 2019-12-31 0001767258 xpel:PaintshieldLtdMember 2019-12-31 0001767258 xpel:SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember 2018-01-01 2018-12-31 0001767258 xpel:SeriesofindividuallyImmaterialBusinessAndAssetAcquisitionsMember 2018-12-31 0001767258 xpel:QuebecInc.PointeClaireMember 2018-08-01 2018-08-01 0001767258 xpel:ApogeeCorp.Member 2018-11-01 2018-11-01 0001767258 xpel:PaintshieldLtdMember 2019-12-20 2019-12-20 0001767258 xpel:QuebecIncQuebecCityMember 2018-04-01 2018-04-01 0001767258 xpel:EShieldsLLCMember 2018-06-01 2018-06-01 0001767258 xpel:CanadaInc.CalgaryMember 2018-08-01 2018-08-01 0001767258 xpel:ProtexCanadaInc.Member us-gaap:SubsequentEventMember 2020-02-01 2020-02-01 0001767258 xpel:XPELLtd.Member us-gaap:SubsequentEventMember 2020-02-01 2020-02-01 0001767258 xpel:XPELLtd.Member us-gaap:SubsequentEventMember 2020-02-01 0001767258 xpel:ProtexCanadaInc.Member us-gaap:SubsequentEventMember 2020-02-01 xpel:segment iso4217:CAD shares iso4217:USD pure xpel:installation_location iso4217:GBP iso4217:USD shares false --12-31 FY 2019 0001767258 0.001 0.001 100000000 100000000 27612597 27612597 27612597 27613 27613 27613 P10Y P5Y P15Y P9Y P3Y P10Y P10Y P5Y P10Y 0 0 0.001 0.001 10000000 10000000 0 0 0 0 P4Y P8Y P3Y P5Y P5Y P5Y P4Y 0 P2Y 10-K true 2019-12-31 false 001-38858 XPEL, INC. NV 20-1117381 618 W. Sunset Road San Antonio TX 78216 210 678-3700 Common Stock, par value $0.001 per share XPEL NASDAQ No No Yes Yes Non-accelerated Filer true true true false 89396831 27612597 <div style="line-height:120%;padding-bottom:16px;text-align:center;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;margin-left:auto;margin-right:auto;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:67%;"/><td style="width:33%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Document</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Parts into which Incorporated</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Portions of the registrant’s Proxy Statement relating to the 2020 Annual Meeting of stockholders to be held on </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;">May 7, 2020.</span></div></td><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Part III</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 11500973 3971226 7154084 5554313 15141153 10799611 2391340 706718 93150 0 36280700 21031868 4014653 3384206 5079110 3820460 3804026 2406512 2322788 51601435 30542888 462226 853150 1126701 10197353 6292093 0 1337599 11786280 8482842 604715 478864 4009949 307281 968237 16708225 9929943 0 0 27613 27613 11348163 11348163 -908764 -1190055 24594878 10617253 35061890 20802974 -168680 -190029 34893210 20612945 51601435 30542888 112204739 95526350 17728142 14394264 129932881 109920614 82308256 73656389 4118366 2827620 86426622 76484009 43506259 33436605 7584377 6802241 18834535 14828361 26418912 21630602 17087347 11806003 96646 168389 -40273 -156309 16950428 11481305 2955356 2760073 13995072 8721232 17447 8698 13977625 8712534 0.51 0.32 27612597 27612597 13995072 8721232 285193 -603673 14280265 8117559 14258916 8119162 21349 -1603 14280265 8117559 27612597 27613 11348163 1904719 -596683 12683812 -188426 12495386 8712534 8712534 8698 8721232 -593372 -593372 -10301 -603673 27612597 27613 11348163 10617253 -1190055 20802974 -190029 20612945 13977625 13977625 17447 13995072 281291 281291 3902 285193 27612597 27613 11348163 24594878 -908764 35061890 -168680 34893210 13995072 8721232 915918 735983 781105 642801 66364 0 11298 -25733 242091 190230 117328 -86218 61316 43416 1773371 261256 4251134 -11148 1653420 -132682 93611 0 32576 3877024 -3635246 -1340441 276280 10965519 6796785 1569823 2030314 68457 155277 127623 831934 674581 386985 -2303570 -3093956 0 -2000000 0 440126 1143240 658055 -1143240 -3098181 7518709 604648 11038 -132326 7529747 472322 3971226 3498904 11500973 3971226 0 998668 0 88216 4079962 2514727 17850 86417 SIGNIFICANT ACCOUNTING POLICIES<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Nature of Business</span><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;"> -</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> The Company is based in San Antonio, Texas and sells, distributes, and installs protective films and coatings, including automotive surface and paint protection film, headlight protection, automotive and architectural window films and ceramic coatings.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company was incorporated in the state of Nevada, U.S.A. in October 2003 and its registered office is 618 W. Sunset Road, San Antonio, Texas, 78216. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Basis of Presentation -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The consolidated financial statements are prepared in conformity with GAAP and include the accounts of the Company and its wholly-owned or majority-owned subsidiaries. The ownership interest of non-controlling participants in subsidiaries that are not wholly-owned is included as a separate component of stockholders’ equity. The non-controlling participants’ share of the net income is included as “Income attributable to noncontrolling interest” on the Consolidated Statements of Income and Comprehensive Income. Intercompany accounts and transactions have been eliminated. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The functional currency for the Company is the United States dollar. The assets and liabilities of each of its foreign subsidiaries are translated into U.S dollars using the exchange rate at the end of the balance sheet date. Revenues and expenses are translated at the average exchange rates for the period. Gains and losses from translations are recognized in foreign currency translation included in accumulated other comprehensive income in the accompanying consolidated balance sheets. Foreign currency exchange gains and losses are recorded in other expense, net in the accompanying consolidated statements of income. The ownership percentages and functional currencies of the entities included in these consolidated financial statements are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:98.71794871794873%;border-collapse:collapse;text-align:left;"><tr><td colspan="6"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Subsidiaries</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Functional Currency</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">% Owned by XPEL, Inc.</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL, Ltd.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">UK Pound Sterling</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>85</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Armourfend CAD, LLC</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">US Dollar</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL Canada Corp.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canadian Dollar</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL B.V.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Euro</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL Germany GmbH</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Euro</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL de Mexico S. de R.L. de C.V.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Peso</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL Acquisition Corp.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canadian Dollar</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Protex Canada, Inc.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canadian Dollar</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Apogee Corp.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">New Taiwan Dollar</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Segment Reporting - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Management has concluded that our chief operating decision maker (“CODM”) is our chief executive officer. The Company’s CODM reviews the entire organization’s consolidated results as a whole on a monthly basis to evaluate performance and make resource allocation decisions. Management views the Company’s operations and manages its business as </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>one</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> operating segment.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Use of Estimates -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The preparation of these consolidated financial statements in conformity to U.S. GAAP requires management to make judgments and estimates and form assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated financial statements and reported amounts of revenues and expenses during the reporting period. Estimates and underlying assumptions are reviewed on an ongoing basis. Actual outcomes may differ from these estimates under different assumptions and conditions.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Foreign Currency Translation -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The financial statements of subsidiaries located outside of the U.S. are generally measured using the local currency as the functional currency. Assets and liabilities of these subsidiaries are translated at the rates of exchange at the balance sheet date. Income and expense items </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">are translated at average monthly rates of exchange. The resultant translation adjustments are included in accumulated other comprehensive income, a separate component of stockholders’ equity.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Cash and Cash Equivalents - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Cash and cash equivalents consist of cash and highly liquid investments with an original maturity of three months or less at the date of purchase. The balance, at times, may exceed federally insured limits.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Accounts Receivable -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Accounts receivable are shown net of an allowance for doubtful accounts of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$182,488</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$133,696</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. The Company evaluates the adequacy of its allowances by analyzing the aging of receivables, customer financial condition, historical collection experience, the value of any collateral and other economic and industry factors. Actual collections may differ from historical experience, and if economic, business or customer conditions deteriorate significantly, adjustments to these reserves may be required. When the Company becomes aware of factors that indicate a change in a specific customer’s ability to meet its financial obligations, the Company records a specific reserve for credit losses. Accounts receivable from a large customer accounted for </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>18.8%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> of the Company’s total accounts receivable balance at </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">. As of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, there was no significant accounts receivable concentration. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Inventory -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Inventory is comprised of film, film-based products and supplies which are valued at lower of cost or net realizable value, with cost determined on a weighted average cost basis. </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">We provide reserves for discontinued and excess inventory based upon historical demand, forecasted usage, estimated customer requirements and product line updates.</span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">As of</span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">and</span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">, inventory reserves were</span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;"><span>$120,826</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">and</span><span style="font-family:Arial;font-size:10pt;color:#000000;background-color:#ffffff;"> </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;"><span>$185,056</span></span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">, respectively.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Property, Plant and Equipment -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Property and equipment are recorded at cost, except property and equipment acquired in connection with the Company’s business combinations, which are recorded at fair value on the date of acquisition. Expenditures which improve or extend the life of the respective assets are capitalized, whereas expenditures for normal repairs and maintenance are charged to operations as incurred. Depreciation expense is computed using the straight-line method as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:50%;"/><td style="width:50%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   5 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Computer equipment</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   3-4 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Vehicles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   5 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Equipment</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   5-8 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   shorter of lease term or estimate useful life</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Plotters</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   4 years</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents geographic property, plant and equipment, net by region as of December 31:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,410,737</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,288,792</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>519,066</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>421,588</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Europe</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>679,112</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>475,345</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>405,738</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>198,481</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Consolidated</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>4,014,653</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,384,206</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Goodwill -  </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Goodwill represents the excess purchase price over the fair value of tangible net assets acquired in business combinations after amounts have been allocated to intangible assets. Goodwill is not amortized, but is reviewed for impairment during the last quarter of each year, or whenever events occur or </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">circumstances change that would more likely than not reduce the fair value of a reporting unit below its carrying amount, using a discounted cash flow model and comparable market values of each reporting unit. Goodwill balances are assessed at the subsidiary level. The Company recognized a goodwill impairment loss in connection with the closing of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>one</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> installation location during the year ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Refer to Note 5, Goodwill for more information related to this impairment.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents geographic Goodwill by region as of December 31:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>617,334</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>617,334</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,740,884</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,701,826</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>48,294</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,628</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Consolidated</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,406,512</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,322,788</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Intangible Assets - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Intangible assets consist primarily of software, customer relationships, trademarks and non-compete agreements. These assets are amortized on a straight-line basis over the period of time in which their expected benefits will be realized. Indefinite-lived trade names are not amortized but are tested at least annually for impairment.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents geographic Intangible assets, net by region as of December 31:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,074,235</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,891,479</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,431,247</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,652,347</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Europe</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>81,612</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,773</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>233,366</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>258,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Consolidated</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,820,460</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,804,026</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents the anticipated useful lives of intangible assets:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:86%;"/><td style="width:14%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trademarks</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 10 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 5 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade name</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 10-15 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Contractual and customer relationships</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 9-10 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Non-compete</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 3-5 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 10 years</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Impairment of Long-Lived Assets -</span><span style="font-family:Arial;font-size:10pt;color:#000000;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company reviews and evaluates long-lived assets for impairment when events or circumstances indicate that the carrying amount of an asset may not be recoverable. When the undiscounted expected future cash flows are not sufficient to recover an asset’s carrying amount, the fair value is compared to the carrying value to determine the impairment loss to be recorded. Long-lived assets to be disposed of are reported at the lower of carrying amount or fair value, less the cost to sell. Fair values are determined by independent appraisals or expected sales prices based upon market participant data developed by third party professionals or by internal licensed real estate professionals. Estimates of future cash flows and expected sales prices are judgments based upon the Company’s experience and knowledge of operations. These estimates project cash flows several years into the future and are affected by changes in the economy, real estate market conditions and inflation.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company recognized an intangible asset impairment loss in connection with the closing of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>one</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> installation location during the year ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Refer to Note 4, Intangible Assets, Net for more information related to this impairment. </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>No</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> impairment was recorded during the year ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Revenue Recognition -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Our revenue is comprised primarily of product and services sales where we act as principal to the transaction.  All revenue is recognized when the Company satisfies its performance obligation(s) by transferring control/final benefit from the promised product or service to our customer. Due to the nature of our sales contracts, the majority of our revenue is recognized at a point in time. A performance obligation is a contractual promise to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. Revenue is recorded net of returns and allowances. Sales, value add, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are accounted for as a fulfillment obligation, on a net basis, and are included in cost of sales. See Note 2, Revenue Recognition, for additional accounting policies and transition disclosures.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Research and Development -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Research costs are charged to operations when incurred. Software development costs, including costs associated with developing software patterns, are expensed as incurred unless the Company incurred these expenses in the development of a new product or long-lived asset. Research and development costs were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$602,446</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$223,886</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> in the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Advertising costs -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;"> Advertising costs are charged to operations when incurred. Advertising costs were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$908,585</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$572,218</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> in the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Provisions and Warranties -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">We provide a warranty on our products. Liability under the warranty policy is based on a review of historical warranty claims. Adjustments are made to the accruals as claims data experience warrant. The following table presents a summary of our warranty liabilities as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Warranty balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>70,250</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>95,882</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Warranties assumed in period</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>384,214</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>370,502</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Payments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(388,873</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(396,134</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Warranty balance at end of period</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>65,591</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>70,250</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Income Taxes -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Deferred income tax assets and liabilities are computed for differences between the financial statement and tax bases of assets and liabilities that will result in taxable or deductible amounts in the future. Such deferred income tax asset and liability computations are based on enacted tax laws and rates applicable to periods in which the differences are expected to affect taxable income. Valuation allowances are established when necessary to reduce deferred tax assets to the amounts expected to be realized. Income tax expense is the tax payable or refundable for the period plus or minus the change during the period in deferred and other tax assets and liabilities.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Accumulated Other Comprehensive Income (Loss) (“AOCI”) -</span><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company reports comprehensive income (loss) that includes net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to expenses, gains and losses that are not included in net earnings. These amounts are also presented in the consolidated statements of comprehensive income. As of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively, AOCI relates to foreign currency translation adjustments.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Earnings Per Share -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Basic earnings per share amounts are calculated by dividing net income for the year attributable to common stockholders by the weighted average number of common shares outstanding </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">during the year. Diluted earnings per share amounts are calculated by dividing the net income attributable to common stockholders by the weighted average number of shares outstanding during the period plus the weighted average number of shares that would be issued on the conversion of all the dilutive potential ordinary shares into common shares.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Business Combinations -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Identifiable assets acquired and liabilities and contingent liabilities assumed in a business combination are measured initially at their fair values at the acquisition date, irrespective of the extent of any non-controlling interest. The excess of the fair value of the consideration transferred including the recognized amount of any non-controlling interest in the acquiree, over the fair value of the Company’s share of the identifiable net assets acquired is recorded as goodwill. Acquisition-related expenses are recognized separately from the business combination and are recognized as general and administrative expense as incurred.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Fair Value -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Assets and liabilities measured at fair value are classified using the following hierarchy, which is based upon the transparency of inputs to the valuation as of the measurement date:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:98.71794871794873%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:20%;"/><td style="width:80%;"/></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;">Level 1:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Valuation is based on observable inputs such as quoted market prices (unadjusted) for identical assets or liabilities in active markets.</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;">Level 2:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Valuation is based on inputs such as quoted market prices for similar assets or liabilities in active markets or other inputs that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the financial instrument.</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;">Level 3:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Valuation is based upon other unobservable inputs that are significant to the fair value measurement.</span></div></td></tr></table></div></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In making fair value measurements, observable market data must be used when available. When inputs used to measure fair value fall within different levels of the hierarchy, the level within which the fair value measurement is categorized is based on the lowest level input that is significant to the fair value measurement.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">Recently Adopted Accounting Pronouncements</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In February 2016, the Financial Accounting Standards Board issued ASU 2016-02, “Leases” (“the new lease standard” or “ASC 842”), which requires an entity to recognize both assets and liabilities arising from financing and operating leases, along with additional qualitative and quantitative disclosures. The new lease standard requirements were effective for annual reporting periods beginning after December 15, 2018, including interim periods within that reporting period. The Company adopted this standard effective January 1, 2019. In adopting this standard, the Company elected the package of practical expedients afforded thereby. This election allowed the Company, among other things, to carry forward prior lease classifications. Pursuant to the adoption of this standard, Right-Of-Use (“ROU”) assets and operating lease liabilities (current and long-term portions) as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$5,079,110</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$5,136,650</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. Refer to Note 15 for additional information related to the adoption of this standard.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">Recent Accounting Pronouncements Issued and Not Yet Adopted</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In June 2016, the FASB issued ASU 2016-13, “Financial Instruments — Measurement of Credit Losses on Financial Instruments”, which requires measurement and recognition of expected credit losses for financial assets held. As a smaller reporting company, ASU 2016-13 is effective for the Company beginning January 1, 2023 and is required to be applied prospectively. We are currently evaluating the impact that ASU 2016-13 will have on our consolidated financial statements.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Basis of Presentation -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The consolidated financial statements are prepared in conformity with GAAP and include the accounts of the Company and its wholly-owned or majority-owned subsidiaries. The ownership interest of non-controlling participants in subsidiaries that are not wholly-owned is included as a separate component of stockholders’ equity. The non-controlling participants’ share of the net income is included as “Income attributable to noncontrolling interest” on the Consolidated Statements of Income and Comprehensive Income. Intercompany accounts and transactions have been eliminated. </span></div>The functional currency for the Company is the United States dollar. The assets and liabilities of each of its foreign subsidiaries are translated into U.S dollars using the exchange rate at the end of the balance sheet date. Revenues and expenses are translated at the average exchange rates for the period. Gains and losses from translations are recognized in foreign currency translation included in accumulated other comprehensive income in the accompanying consolidated balance sheets. Foreign currency exchange gains and losses are recorded in other expense, net in the accompanying consolidated statements of income. The ownership percentages and functional currencies of the entities included in these consolidated financial statements are as follows:<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:98.71794871794873%;border-collapse:collapse;text-align:left;"><tr><td colspan="6"/></tr><tr><td style="width:56%;"/><td style="width:1%;"/><td style="width:21%;"/><td style="width:1%;"/><td style="width:20%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Subsidiaries</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Functional Currency</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">% Owned by XPEL, Inc.</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL, Ltd.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">UK Pound Sterling</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>85</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Armourfend CAD, LLC</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">US Dollar</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL Canada Corp.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canadian Dollar</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL B.V.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Euro</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL Germany GmbH</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Euro</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL de Mexico S. de R.L. de C.V.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Peso</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">XPEL Acquisition Corp.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canadian Dollar</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Protex Canada, Inc.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canadian Dollar</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Apogee Corp.</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">New Taiwan Dollar</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>100</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 0.85 1 1 1 1 1 1 1 1 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Segment Reporting - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Management has concluded that our chief operating decision maker (“CODM”) is our chief executive officer. The Company’s CODM reviews the entire organization’s consolidated results as a whole on a monthly basis to evaluate performance and make resource allocation decisions. Management views the Company’s operations and manages its business as </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>one</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> operating segment.</span></div> 1 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Use of Estimates -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The preparation of these consolidated financial statements in conformity to U.S. GAAP requires management to make judgments and estimates and form assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated financial statements and reported amounts of revenues and expenses during the reporting period. Estimates and underlying assumptions are reviewed on an ongoing basis. Actual outcomes may differ from these estimates under different assumptions and conditions.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Foreign Currency Translation -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The financial statements of subsidiaries located outside of the U.S. are generally measured using the local currency as the functional currency. Assets and liabilities of these subsidiaries are translated at the rates of exchange at the balance sheet date. Income and expense items </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">are translated at average monthly rates of exchange. The resultant translation adjustments are included in accumulated other comprehensive income, a separate component of stockholders’ equity.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Cash and Cash Equivalents - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Cash and cash equivalents consist of cash and highly liquid investments with an original maturity of three months or less at the date of purchase. The balance, at times, may exceed federally insured limits.</span></div> <span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Accounts Receivable -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Accounts receivable are shown net of an allowance for doubtful accounts of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$182,488</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$133,696</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span>, respectively. The Company evaluates the adequacy of its allowances by analyzing the aging of receivables, customer financial condition, historical collection experience, the value of any collateral and other economic and industry factors. Actual collections may differ from historical experience, and if economic, business or customer conditions deteriorate significantly, adjustments to these reserves may be required. When the Company becomes aware of factors that indicate a change in a specific customer’s ability to meet its financial obligations, the Company records a specific reserve for credit losses. 182488 133696 0.188 <span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Inventory -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Inventory is comprised of film, film-based products and supplies which are valued at lower of cost or net realizable value, with cost determined on a weighted average cost basis. </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">We provide reserves for discontinued and excess inventory based upon historical demand, forecasted usage, estimated customer requirements and product line updates.</span> 120826 185056 <span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Property, Plant and Equipment -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span>Property and equipment are recorded at cost, except property and equipment acquired in connection with the Company’s business combinations, which are recorded at fair value on the date of acquisition. Expenditures which improve or extend the life of the respective assets are capitalized, whereas expenditures for normal repairs and maintenance are charged to operations as incurred. Depreciation expense is computed using the straight-line method as follows:<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:50%;"/><td style="width:50%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   5 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Computer equipment</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   3-4 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Vehicles</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   5 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Equipment</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   5-8 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Leasehold improvements</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   shorter of lease term or estimate useful life</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Plotters</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">-   4 years</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents geographic property, plant and equipment, net by region as of December 31:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,410,737</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,288,792</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>519,066</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>421,588</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Europe</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>679,112</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>475,345</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>405,738</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>198,481</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Consolidated</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>4,014,653</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,384,206</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Property and equipment consists of the following:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,168,894</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>956,467</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Computer equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,151,295</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>939,979</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Vehicles</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>683,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>730,765</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,648,656</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,079,503</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Leasehold improvements</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,479,594</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>941,627</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Plotters</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>839,455</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>544,080</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Construction in Progress</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>306,100</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>646,576</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,277,207</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,838,997</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Less: accumulated depreciation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,262,554</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,454,791</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Property and equipment, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>4,014,653</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,384,206</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 2410737 2288792 519066 421588 679112 475345 405738 198481 4014653 3384206 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Goodwill -  </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Goodwill represents the excess purchase price over the fair value of tangible net assets acquired in business combinations after amounts have been allocated to intangible assets. Goodwill is not amortized, but is reviewed for impairment during the last quarter of each year, or whenever events occur or </span></div>circumstances change that would more likely than not reduce the fair value of a reporting unit below its carrying amount, using a discounted cash flow model and comparable market values of each reporting unit. Goodwill balances are assessed at the subsidiary level. 1 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents geographic Goodwill by region as of December 31:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>617,334</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>617,334</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,740,884</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,701,826</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>48,294</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,628</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Consolidated</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,406,512</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,322,788</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table summarizes changes in the carrying amounts of goodwill for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,856,642</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Additions</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>576,173</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign currency translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(110,027</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2018</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,322,788</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,322,788</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Additions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>44,584</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Impairment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(35,884</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign currency translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>75,024</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,406,512</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 617334 617334 1740884 1701826 48294 3628 2406512 2322788 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Intangible Assets - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Intangible assets consist primarily of software, customer relationships, trademarks and non-compete agreements. These assets are amortized on a straight-line basis over the period of time in which their expected benefits will be realized. Indefinite-lived trade names are not amortized but are tested at least annually for impairment.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents geographic Intangible assets, net by region as of December 31:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,074,235</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,891,479</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,431,247</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,652,347</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Europe</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>81,612</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,773</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>233,366</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>258,427</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Consolidated</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,820,460</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,804,026</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents the anticipated useful lives of intangible assets:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:86%;"/><td style="width:14%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trademarks</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 10 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 5 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade name</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 10-15 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Contractual and customer relationships</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 9-10 years</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Non-compete</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 3-5 years</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"> - 10 years</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Intangible assets consists of the following:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trademarks</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>309,395</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>289,734</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,288,062</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,635,731</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade name</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>492,408</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>457,766</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Contractual and customer relationships</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,010,480</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,947,264</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Non-compete</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>268,459</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>261,914</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>208,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>150,267</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total cost</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,576,816</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,742,676</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Less: Accumulated amortization</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,756,356</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,938,650</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Intangible assets, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,820,460</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,804,026</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 2074235 1891479 1431247 1652347 81612 1773 233366 258427 3820460 3804026 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Impairment of Long-Lived Assets -</span><span style="font-family:Arial;font-size:10pt;color:#000000;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company reviews and evaluates long-lived assets for impairment when events or circumstances indicate that the carrying amount of an asset may not be recoverable. When the undiscounted expected future cash flows are not sufficient to recover an asset’s carrying amount, the fair value is compared to the carrying value to determine the impairment loss to be recorded. Long-lived assets to be disposed of are reported at the lower of carrying amount or fair value, less the cost to sell. Fair values are determined by independent appraisals or expected sales prices based upon market participant data developed by third party professionals or by internal licensed real estate professionals. Estimates of future cash flows and expected sales prices are judgments based upon the Company’s experience and knowledge of operations. These estimates project cash flows several years into the future and are affected by changes in the economy, real estate market conditions and inflation.</span></div> 1 0 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Revenue Recognition -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Our revenue is comprised primarily of product and services sales where we act as principal to the transaction.  All revenue is recognized when the Company satisfies its performance obligation(s) by transferring control/final benefit from the promised product or service to our customer. Due to the nature of our sales contracts, the majority of our revenue is recognized at a point in time. A performance obligation is a contractual promise to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. Revenue is recorded net of returns and allowances. Sales, value add, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are accounted for as a fulfillment obligation, on a net basis, and are included in cost of sales. See Note 2, Revenue Recognition, for additional accounting policies and transition disclosures.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">When the Company transfers goods or services to a customer, payment is due, subject to normal terms, and is not conditional on anything other than the passage of time. Typical payment terms range from due upon receipt to 30 days, depending on the type of customer and relationship. At contract inception, the Company expects that the period of time between the transfer of goods to the customer and when the customer pays for those goods will be less than one year, which is consistent with the Company’s standard payment terms. Accordingly, the Company has elected the practical expedient under ASC 606 to not adjust for the effects of a significant financing component. As such, these amounts are recorded as receivables and not contract assets.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Revenue recognition</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company recognizes revenue when it satisfies a performance obligation by transferring control of the promised goods and services to a customer, in an amount that reflects the consideration that it expects to receive in exchange for those goods or services. This is achieved through applying the following five-step model:</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Identification of the contract, or contracts, with a customer;</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Identification of the performance obligations in the contract;</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Determination of the transaction price;</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Allocation of the transaction price to the performance obligations in the contract; and</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:16px;padding-top:0px;text-align:justify;"><span style="padding-bottom:16px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Recognition of revenue when, or as, the Company satisfies a performance obligation.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company generates substantially all of its revenue from contracts with customers, whether formal or implied. Sales taxes collected from customers are remitted to the appropriate taxing jurisdictions and are excluded from sales revenue as the Company considers itself a pass-through conduit for collecting and remitting sales taxes, with the exception of taxes assessed during the procurement process of select inventories. Shipping and handling costs are included in cost of sales.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Revenue from product and services sales are recognized when control of the goods is transferred to the customer which occurs at a point in time typically upon shipment to the customer or completion of the service. This standard applies to all contracts with customers, except for contracts that are within the scope of other standards, such as leases, insurance, collaboration arrangements and financial instruments.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Based upon the nature of the products the Company sells, its customers have limited rights of return which are immaterial. Discounts provided by the Company to customers at the time of sale are recognized as a reduction in sales as the products are sold. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Warranty obligations associated with the sale of our products are assurance-type warranties that are a guarantee of the product’s intended functionality and, therefore, do not represent a distinct performance obligation within the context of the contract. Warranty expense is included in cost of sales.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">We apply a practical expedient to expense direct costs of obtaining a contract when incurred because the amortization period would have been one year or less.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Under its contracts with customers, the Company stands ready to deliver product upon receipt of a purchase order. Accordingly, the Company has no performance obligations under its contracts until its customers submit a purchase order. The Company does not enter into commitments to provide goods or services that have terms greater than one year. In limited cases, the Company does require payment in advance of shipping product. Typically, product is shipped within a few days after prepayment is received. These prepayments are recorded as contract liabilities on the consolidated balance sheet and are included in accounts payable and accrued liabilities (Note 9). As the performance obligation is part of a contract that has an original expected duration of less than one year, the Company has applied the practical expedient under ASC 606 to omit disclosures regarding remaining performance obligations. </span></div> <span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Research and Development -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span>Research costs are charged to operations when incurred. Software development costs, including costs associated with developing software patterns, are expensed as incurred unless the Company incurred these expenses in the development of a new product or long-lived asset. 602446 223886 <span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Advertising costs -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span> Advertising costs are charged to operations when incurred. 908585 572218 <span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Provisions and Warranties -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span>We provide a warranty on our products. Liability under the warranty policy is based on a review of historical warranty claims. Adjustments are made to the accruals as claims data experience warrant. The following table presents a summary of our warranty liabilities as of <span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">:</span><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Warranty balance at beginning of period</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>70,250</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>95,882</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Warranties assumed in period</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>384,214</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>370,502</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Payments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(388,873</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(396,134</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Warranty balance at end of period</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>65,591</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>70,250</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 70250 95882 384214 370502 388873 396134 65591 70250 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Income Taxes -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Deferred income tax assets and liabilities are computed for differences between the financial statement and tax bases of assets and liabilities that will result in taxable or deductible amounts in the future. Such deferred income tax asset and liability computations are based on enacted tax laws and rates applicable to periods in which the differences are expected to affect taxable income. Valuation allowances are established when necessary to reduce deferred tax assets to the amounts expected to be realized. Income tax expense is the tax payable or refundable for the period plus or minus the change during the period in deferred and other tax assets and liabilities.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Accumulated Other Comprehensive Income (Loss) (“AOCI”) -</span><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company reports comprehensive income (loss) that includes net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to expenses, gains and losses that are not included in net earnings. These amounts are also presented in the consolidated statements of comprehensive income. As of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;background-color:#ffffff;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively, AOCI relates to foreign currency translation adjustments.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Earnings Per Share -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Basic earnings per share amounts are calculated by dividing net income for the year attributable to common stockholders by the weighted average number of common shares outstanding </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">during the year. Diluted earnings per share amounts are calculated by dividing the net income attributable to common stockholders by the weighted average number of shares outstanding during the period plus the weighted average number of shares that would be issued on the conversion of all the dilutive potential ordinary shares into common shares.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Business Combinations -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Identifiable assets acquired and liabilities and contingent liabilities assumed in a business combination are measured initially at their fair values at the acquisition date, irrespective of the extent of any non-controlling interest. The excess of the fair value of the consideration transferred including the recognized amount of any non-controlling interest in the acquiree, over the fair value of the Company’s share of the identifiable net assets acquired is recorded as goodwill. Acquisition-related expenses are recognized separately from the business combination and are recognized as general and administrative expense as incurred.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Fair Value -</span><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Assets and liabilities measured at fair value are classified using the following hierarchy, which is based upon the transparency of inputs to the valuation as of the measurement date:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:98.71794871794873%;border-collapse:collapse;text-align:left;"><tr><td colspan="2"/></tr><tr><td style="width:20%;"/><td style="width:80%;"/></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;">Level 1:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Valuation is based on observable inputs such as quoted market prices (unadjusted) for identical assets or liabilities in active markets.</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;">Level 2:</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Valuation is based on inputs such as quoted market prices for similar assets or liabilities in active markets or other inputs that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the financial instrument.</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;">Level 3:</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Valuation is based upon other unobservable inputs that are significant to the fair value measurement.</span></div></td></tr></table></div></div>In making fair value measurements, observable market data must be used when available. When inputs used to measure fair value fall within different levels of the hierarchy, the level within which the fair value measurement is categorized is based on the lowest level input that is significant to the fair value measurement<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Financial instruments include cash and cash equivalents (level 1), accounts receivable, accounts payable and long-term debt. The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable and short-term borrowings approximate fair value because of the near-term maturities of these financial instruments. The carrying value of the Company’s notes payable approximates fair value due to the relatively short-term nature and interest rates of the notes. For discussion of the fair value measurements related to goodwill refer to Note 5, Goodwill, of the consolidated financial statements for periods ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The estimated fair value of debt is based on market quotes for instruments with similar terms and remaining maturities (Level 2 inputs and valuation techniques).</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">ASC 820 prioritizes the inputs to valuation techniques used to measure fair value into the following hierarchy:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Level 1 – Observable inputs such as quoted prices (unadjusted) in active markets for identical assets or liabilities.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Level 2 – Inputs other than the quoted prices in active markets that are observable either directly or indirectly, including: quoted prices for similar assets and liabilities in active markets; quoted prices for identical </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">or similar assets and liabilities in markets that are not active or other inputs that are observable or can be corroborated by observable market data.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Level 3 – Unobservable inputs that are supported by little or no market data and require the reporting entity to develop its own assumptions.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">Recently Adopted Accounting Pronouncements</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In February 2016, the Financial Accounting Standards Board issued ASU 2016-02, “Leases” (“the new lease standard” or “ASC 842”), which requires an entity to recognize both assets and liabilities arising from financing and operating leases, along with additional qualitative and quantitative disclosures. The new lease standard requirements were effective for annual reporting periods beginning after December 15, 2018, including interim periods within that reporting period. The Company adopted this standard effective January 1, 2019. In adopting this standard, the Company elected the package of practical expedients afforded thereby. This election allowed the Company, among other things, to carry forward prior lease classifications. Pursuant to the adoption of this standard, Right-Of-Use (“ROU”) assets and operating lease liabilities (current and long-term portions) as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$5,079,110</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$5,136,650</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. Refer to Note 15 for additional information related to the adoption of this standard.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">Recent Accounting Pronouncements Issued and Not Yet Adopted</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In June 2016, the FASB issued ASU 2016-13, “Financial Instruments — Measurement of Credit Losses on Financial Instruments”, which requires measurement and recognition of expected credit losses for financial assets held. As a smaller reporting company, ASU 2016-13 is effective for the Company beginning January 1, 2023 and is required to be applied prospectively. We are currently evaluating the impact that ASU 2016-13 will have on our consolidated financial statements.</span></div> 5079110 5136650 REVENUE<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Revenue recognition</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company recognizes revenue when it satisfies a performance obligation by transferring control of the promised goods and services to a customer, in an amount that reflects the consideration that it expects to receive in exchange for those goods or services. This is achieved through applying the following five-step model:</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Identification of the contract, or contracts, with a customer;</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Identification of the performance obligations in the contract;</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Determination of the transaction price;</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:4px;padding-top:0px;text-align:justify;"><span style="padding-bottom:4px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Allocation of the transaction price to the performance obligations in the contract; and</span></div><div style="line-height:120%;padding-left:0px;padding-bottom:16px;padding-top:0px;text-align:justify;"><span style="padding-bottom:16px;padding-top:0px;text-align:justify;font-family:Arial;font-size:10pt;color:#000000;padding-right:48px;">•</span><span style="font-family:Arial;font-size:10pt;color:#000000;">Recognition of revenue when, or as, the Company satisfies a performance obligation.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company generates substantially all of its revenue from contracts with customers, whether formal or implied. Sales taxes collected from customers are remitted to the appropriate taxing jurisdictions and are excluded from sales revenue as the Company considers itself a pass-through conduit for collecting and remitting sales taxes, with the exception of taxes assessed during the procurement process of select inventories. Shipping and handling costs are included in cost of sales.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Revenue from product and services sales are recognized when control of the goods is transferred to the customer which occurs at a point in time typically upon shipment to the customer or completion of the service. This standard applies to all contracts with customers, except for contracts that are within the scope of other standards, such as leases, insurance, collaboration arrangements and financial instruments.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Based upon the nature of the products the Company sells, its customers have limited rights of return which are immaterial. Discounts provided by the Company to customers at the time of sale are recognized as a reduction in sales as the products are sold. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Warranty obligations associated with the sale of our products are assurance-type warranties that are a guarantee of the product’s intended functionality and, therefore, do not represent a distinct performance obligation within the context of the contract. Warranty expense is included in cost of sales.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">We apply a practical expedient to expense direct costs of obtaining a contract when incurred because the amortization period would have been one year or less.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Under its contracts with customers, the Company stands ready to deliver product upon receipt of a purchase order. Accordingly, the Company has no performance obligations under its contracts until its customers submit a purchase order. The Company does not enter into commitments to provide goods or services that have terms greater than one year. In limited cases, the Company does require payment in advance of shipping product. Typically, product is shipped within a few days after prepayment is received. These prepayments are recorded as contract liabilities on the consolidated balance sheet and are included in accounts payable and accrued liabilities (Note 9). As the performance obligation is part of a contract that has an original expected duration of less than one year, the Company has applied the practical expedient under ASC 606 to omit disclosures regarding remaining performance obligations. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table summarizes transactions included within contract liabilities for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:80%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, December 31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,701,356</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Revenue recognized related to payments included in the December 31, 2017 balance</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(1,701,356</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, Payments received for which performance obligations have not been satisfied</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>136,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Effect of Foreign Currency Translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>136,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Revenue recognized related to payments included in the December 31, 2018 balance</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(115,670</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Payments received for which performance obligations have not been satisfied</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>537,683</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Effect of Foreign Currency Translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,006</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, December 31, 2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>559,232</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">When the Company transfers goods or services to a customer, payment is due, subject to normal terms, and is not conditional on anything other than the passage of time. Typical payment terms range from due upon receipt to 30 days, depending on the type of customer and relationship. At contract inception, the Company expects that the period of time between the transfer of goods to the customer and when the customer pays for those goods will be less than one year, which is consistent with the Company’s standard payment terms. Accordingly, the Company has elected the practical expedient under ASC 606 to not adjust for the effects of a significant financing component. As such, these amounts are recorded as receivables and not contract assets.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The table below sets forth the disaggregation of revenue by product category for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31,</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Product Revenue</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Paint protection film</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>97,341,865</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>85,495,382</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Window film</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>11,384,437</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,309,773</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,478,437</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,721,195</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>112,204,739</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>95,526,350</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Service Revenue</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,263,391</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,566,960</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Cutbank credits</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,253,610</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,197,250</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Installation labor</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,620,527</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,211,633</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Training</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>590,614</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>418,421</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>17,728,142</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>14,394,264</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>129,932,881</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>109,920,614</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Because many of our international customers require us to ship their orders to freight forwarders located in the United States, we cannot be certain about the ultimate destination of the product. The following table represents our estimate of sales by geographic regions based on our understanding of ultimate product destination based on customer interactions, customer locations and other factors:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Twelve Months Ended<br/>December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>60,452,238</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>46,077,624</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">China</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>30,490,859</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>32,279,335</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>17,912,548</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>15,146,869</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Continental Europe</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,419,524</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,734,925</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United Kingdom</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,784,535</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,725,925</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Asia Pacific</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>4,370,156</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,754,495</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Latin America</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,098,873</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,799,180</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Middle East/Africa</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,149,235</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,806,502</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>254,913</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>595,759</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>129,932,881</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>109,920,614</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><span style="font-family:Arial;font-size:10pt;color:#000000;">Our largest customer (the China Distributor) accounted for </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>23.5%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>29.2%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> of our net sales during </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the year ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span>, respectively. <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table summarizes transactions included within contract liabilities for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:80%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, December 31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,701,356</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Revenue recognized related to payments included in the December 31, 2017 balance</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(1,701,356</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, Payments received for which performance obligations have not been satisfied</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>136,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Effect of Foreign Currency Translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>136,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Revenue recognized related to payments included in the December 31, 2018 balance</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(115,670</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Payments received for which performance obligations have not been satisfied</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>537,683</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Effect of Foreign Currency Translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,006</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance, December 31, 2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>559,232</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 1701356 1701356 136213 0 136213 115670 537683 1006 559232 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The table below sets forth the disaggregation of revenue by product category for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31,</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Product Revenue</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Paint protection film</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>97,341,865</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>85,495,382</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Window film</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>11,384,437</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,309,773</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,478,437</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,721,195</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>112,204,739</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>95,526,350</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Service Revenue</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Software</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,263,391</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,566,960</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Cutbank credits</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,253,610</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,197,250</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Installation labor</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,620,527</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,211,633</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Training</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>590,614</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>418,421</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>17,728,142</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>14,394,264</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>129,932,881</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>109,920,614</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 97341865 85495382 11384437 7309773 3478437 2721195 112204739 95526350 3263391 2566960 7253610 6197250 6620527 5211633 590614 418421 17728142 14394264 129932881 109920614 The following table represents our estimate of sales by geographic regions based on our understanding of ultimate product destination based on customer interactions, customer locations and other factors:<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:top;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Twelve Months Ended<br/>December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United States</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>60,452,238</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>46,077,624</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">China</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>30,490,859</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>32,279,335</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Canada</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>17,912,548</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>15,146,869</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Continental Europe</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,419,524</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,734,925</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">United Kingdom</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,784,535</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,725,925</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Asia Pacific</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>4,370,156</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,754,495</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Latin America</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,098,873</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,799,180</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Middle East/Africa</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,149,235</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,806,502</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>254,913</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>595,759</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:12px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>129,932,881</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>109,920,614</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 60452238 46077624 30490859 32279335 17912548 15146869 7419524 5734925 3784535 2725925 4370156 2754495 2098873 1799180 3149235 2806502 254913 595759 129932881 109920614 0.235 0.292 PROPERTY AND EQUIPMENT, NET <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Property and equipment consists of the following:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:65%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Furniture and fixtures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,168,894</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>956,467</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Computer equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,151,295</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>939,979</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Vehicles</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>683,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>730,765</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,648,656</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,079,503</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Leasehold improvements</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,479,594</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>941,627</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Plotters</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>839,455</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>544,080</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Construction in Progress</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>306,100</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>646,576</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,277,207</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,838,997</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Less: accumulated depreciation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,262,554</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,454,791</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Property and equipment, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>4,014,653</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,384,206</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Depreciation expense for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$915,918</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$735,983</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively.</span></div> 1168894 956467 1151295 939979 683213 730765 1648656 1079503 1479594 941627 839455 544080 306100 646576 7277207 5838997 3262554 2454791 4014653 3384206 915918 735983 INTANGIBLE ASSETS, NET<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Intangible assets consists of the following:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trademarks</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>309,395</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>289,734</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Software</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,288,062</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,635,731</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade name</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>492,408</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>457,766</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Contractual and customer relationships</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,010,480</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,947,264</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Non-compete</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>268,459</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>261,914</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:10px;text-indent:-11px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>208,012</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>150,267</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total cost</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,576,816</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,742,676</span></span></div></td><td style="vertical-align:bottom;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Less: Accumulated amortization</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,756,356</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,938,650</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Intangible assets, net</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,820,460</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,804,026</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Amortization expense for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$781,105</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$642,801</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. Based on the carrying value of definite-lived intangible assets as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, we estimate our future amortization expense will be as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>796,029</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>703,624</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>617,107</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>576,160</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>461,122</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>666,417</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">During </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the year ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, the Company’s wholly-owned subsidiary, Protex Canada, sold a franchise territory to a new franchisee in Quebec. In connection with this arrangement, the Company closed its Quebec City installation location and recorded an impairment against all previously recognized intangible assets for that location. The Company recorded an impairment loss of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$30,480</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> related to the intangible assets other than goodwill associated with this closed location. This impairment loss is reflected in general and administrative expense on the consolidated statement of income.</span></div> 309395 289734 2288062 1635731 492408 457766 3010480 2947264 268459 261914 208012 150267 6576816 5742676 2756356 1938650 3820460 3804026 781105 642801 Based on the carrying value of definite-lived intangible assets as of <span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, we estimate our future amortization expense will be as follows:</span><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>796,029</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>703,624</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>617,107</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>576,160</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>461,122</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Thereafter</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>666,417</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 796029 703624 617107 576160 461122 666417 30480 GOODWILL<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table summarizes changes in the carrying amounts of goodwill for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the years ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2017</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,856,642</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Additions</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>576,173</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign currency translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(110,027</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2018</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,322,788</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,322,788</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Additions</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>44,584</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Impairment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(35,884</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign currency translation</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>75,024</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Balance at December 31, 2019</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,406,512</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;"> During </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the year ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, the Company’s wholly-owned subsidiary, Protex Canada, sold a franchise territory to a new franchisee in Quebec. In connection with this arrangement, the Company closed its Quebec City installation location and recorded an impairment against all previously recognized intangible assets for that location. The Company recorded an impairment loss of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$35,884</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> related to the Goodwill associated with this closed location. This impairment loss is reflected in general and administrative expense on the consolidated statement of income. </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>No</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> impairment was recorded during the year ended December 31, 2018.</span></div> 1856642 576173 -110027 2322788 2322788 44584 35884 75024 2406512 35884 0 INVENTORIES<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:36px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The components of inventory are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Film and film based products</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>13,538,610</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>9,399,067</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other products</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,226,708</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,264,862</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Packaging and supplies</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>496,661</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>320,738</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Inventory reserve</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(120,826</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(185,056</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>15,141,153</span></span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>10,799,611</span></span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:36px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The components of inventory are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Film and film based products</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>13,538,610</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>9,399,067</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other products</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,226,708</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,264,862</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Packaging and supplies</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>496,661</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>320,738</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Inventory reserve</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(120,826</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(185,056</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>15,141,153</span></span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>10,799,611</span></span></div></td><td style="vertical-align:bottom;border-bottom:2px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 13538610 9399067 1226708 1264862 496661 320738 120826 185056 15141153 10799611 DEBT<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">REVOLVING FACILITIES</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:32px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company has an </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$8,500,000</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> revolving line of credit agreement with The Bank of San Antonio to support its continuing working capital needs. The Bank of San Antonio has been granted a security interest in substantially all of the Company’s current and future assets. The line of credit has a variable interest rate of the Wall Street Journal prime rate plus </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>0.75%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> with a floor of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>4.25%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and matures on May 5, 2020. The interest rate was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>5.50%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>6.25%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019 and 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. As of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019 and 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>no</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> balance was outstanding on this line. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:32px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The credit agreement contains customary covenants including covenants relating to complying with applicable laws, delivery of financial statements, payment of taxes and maintaining insurance. The credit agreement also requires that  XPEL must maintain debt service coverage (EBITDA divided by the current portion of long-term debt +interest) of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>1.25</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">:1 and debt to tangible net worth of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>4.0</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">:1 on a rolling four quarter basis. The credit agreement also contains customary events of default including the failure to make payments of principal and interest, the breach of any covenants, the occurrence of a material adverse change, and certain bankruptcy and insolvency events.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">As of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019 and 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, the Company was in compliance with all debt covenants.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">XPEL Canada Corp., a wholly owned subsidiary of XPEL, Inc., also has a CAD </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$4,500,000</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> revolving line of credit agreement with HSBC Bank Canada to support its continuing working capital needs. The line has a variable interest rate of the HSBC Canada Bank’s prime rate plus </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>0.25%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. The interest rate was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>4.20%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>5.75%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019 and 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. As of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019 and 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>no</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> balance was outstanding on this line of credit. This facility is guaranteed by the Company.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">NOTES PAYABLE</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">As part of its acquisition strategy, the Company uses a combination of cash and unsecured non-interest bearing promissory notes payable to fund its business acquisitions. The Company discounts the promissory note to fair value using market interest rates at the time of the acquisition. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:48px;text-indent:-24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Notes payable are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:39%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Weighted Average Interest Rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Matures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Acquisition notes payable</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5.76%</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>769,507</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,821,387</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Current portion</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>462,226</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>853,150</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total long-term debt</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>307,281</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>968,237</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:48px;text-indent:-24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The approximate future principal payments on the notes payable are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:48px;text-indent:-24px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:96.15384615384616%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:84%;"/><td style="width:1%;"/><td style="width:14%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>463,025</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>300,873</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>42,969</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>806,867</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 8500000 0.0075 0.0425 0.0550 0.0625 0 1.25 4.0 4500000 0.0025 0.0420 0.0575 0 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:48px;text-indent:-24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Notes payable are summarized as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="12"/></tr><tr><td style="width:39%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:15%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Weighted Average Interest Rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Matures</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Acquisition notes payable</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5.76%</span></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2022</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>769,507</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,821,387</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:5px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Current portion</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>462,226</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>853,150</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total long-term debt</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>307,281</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>968,237</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 0.0576 769507 1821387 462226 853150 307281 968237 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:48px;text-indent:-24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The approximate future principal payments on the notes payable are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:48px;text-indent:-24px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:96.15384615384616%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:84%;"/><td style="width:1%;"/><td style="width:14%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>463,025</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>300,873</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>42,969</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>806,867</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 463025 300873 42969 0 0 0 806867 EMPLOYEE BENEFIT PLAN<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company sponsors defined contribution plans for substantially all employees. Annual Company contributions under the plans are discretionary. Company contribution expense during the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019 and 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$174,744</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$124,431</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively.</span></div> 174744 124431 ACCOUNTS PAYABLE AND ACCRUED LIABILITIES<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents significant accounts payable and accrued liability balances as of the periods ending:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:61%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade payables</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,440,965</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,905,187</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Payroll liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,367,340</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,194,237</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Contract liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>559,232</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>136,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>829,816</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,056,456</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>10,197,353</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,292,093</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table presents significant accounts payable and accrued liability balances as of the periods ending:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:61%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:17%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2018</span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade payables</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>7,440,965</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,905,187</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Payroll liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,367,340</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,194,237</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Contract liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>559,232</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>136,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:middle;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>829,816</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,056,456</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>10,197,353</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,292,093</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 7440965 3905187 1367340 1194237 559232 136213 829816 1056456 10197353 6292093 CAPITAL STOCK<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Shares issued and outstanding at both </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>27,612,597</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Par value of these shares for these same dates was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$27,613</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">.</span></div> 27612597 27613 STOCK OPTIONS<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company has an Incentive Stock Option Plan (the “Plan”). The Plan provides for options to be granted to the benefit of employees, directors and third parties. The maximum number of shares of Common Stock allocated to and made available to be issued under the Plan shall not exceed </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>10%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> of the shares of Common Stock issued and outstanding (on a non-diluted basis) at any time. The exercise price of options granted under the Plan will be determined by the directors, but will at least be equal to the closing trading price of the Common Stock on the last trading day prior to the grant and otherwise the fair market price as determined by the Board of Directors. The term of any option granted shall not exceed </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>ten years</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Except as otherwise provided elsewhere in the Stock Option Plan, the options shall be cumulatively exercisable in installments over the option period at a rate to be fixed by the Board of Directors. The Company does not provide financial assistance to any optionee in connection with the exercise of options. At </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, there were no options outstanding under the Plan.</span></div> 0.10 P10Y FAIR VALUE MEASUREMENTS<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Financial instruments include cash and cash equivalents (level 1), accounts receivable, accounts payable and long-term debt. The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable and short-term borrowings approximate fair value because of the near-term maturities of these financial instruments. The carrying value of the Company’s notes payable approximates fair value due to the relatively short-term nature and interest rates of the notes. For discussion of the fair value measurements related to goodwill refer to Note 5, Goodwill, of the consolidated financial statements for periods ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The estimated fair value of debt is based on market quotes for instruments with similar terms and remaining maturities (Level 2 inputs and valuation techniques).</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">ASC 820 prioritizes the inputs to valuation techniques used to measure fair value into the following hierarchy:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Level 1 – Observable inputs such as quoted prices (unadjusted) in active markets for identical assets or liabilities.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Level 2 – Inputs other than the quoted prices in active markets that are observable either directly or indirectly, including: quoted prices for similar assets and liabilities in active markets; quoted prices for identical </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">or similar assets and liabilities in markets that are not active or other inputs that are observable or can be corroborated by observable market data.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Level 3 – Unobservable inputs that are supported by little or no market data and require the reporting entity to develop its own assumptions.</span></div> INCOME TAXES <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Income before income taxes classified by source of income was as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Domestic</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>15,375,731</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>10,008,013</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">International</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,574,697</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,473,292</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>16,950,428</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>11,481,305</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Tax Cuts and Jobs Act (the “Tax Act”), enacted on December 22, 2017, reduced the U.S. federal corporate tax rate from 35 percent to 21 percent. The amount recorded in 2018 related to the remeasurement of the Company’s deferred tax balance was </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$0.1 million</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In January 2018, the FASB released guidance on the accounting for tax on the global intangible low-taxed income ("GILTI") provisions of the Tax Act. The GILTI provisions impose a tax on foreign income in excess of a deemed return on tangible assets of foreign corporations. The guidance indicates that either accounting for deferred taxes related to GILTI inclusions or treating any taxes on GILTI inclusions as period cost are both acceptable methods subject to an accounting policy election. For the years ended December 31, 2019 and 2018, the Company has elected to treat any potential GILTI inclusions as a period cost.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Tax Act also provided for a deduction to incent US corporations to provide goods and services to foreign customers known as foreign derived intangible income (“FDII”). Due to a lack of clarity regarding the calculation of FDII, the treasury department issued proposed regulations in March 2019 that included rules for determining various factors of the FDII calculation. After a public hearing on the proposed regulation in July 2019, the Treasury Department issued new documentation guidance on FDII in September 2019. Subsequent to the issuance of this additional guidance, the Company filed its 2018 corporate income tax return which included a FDII deduction yielding a tax benefit of approximately </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$.2 million</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. This 2018 tax benefit was included as a return to provision adjustment in calculation of the Company’s 2019 income tax expense.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Income Tax Expense</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The provision for income taxes differs from the United States federal statutory rate as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>16,950,428</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>11,481,305</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Statutory rate</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>21</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>21</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,559,590</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,411,074</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">State taxes net of federal benefit</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>31,446</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>183,468</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Nondeductible/nontaxable items</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>115,679</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign tax rate differential</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>45,994</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>81,474</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign derived intangible income benefit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(287,606</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Return to provision estimated revision</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(358,986</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other - net</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(150,761</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>84,057</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Income tax expense</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,955,356</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,760,073</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The foreign tax rate differential reflects the impact of the differences in our various international tax rates and our US statutory rate. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The components of the income tax provision (benefit) are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Years ended December 31</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Current Income Tax Expense</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,412,157</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,182,415</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>518,528</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>431,638</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">State</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,068</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>232,238</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total Current Income Tax Expense</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,933,753</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,846,291</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Deferred Income Tax Expense/(Benefit)</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Federal</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>99,870</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(65,801</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(78,267</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(20,417</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total Deferred Income Tax Expense/(Benefit)</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>21,603</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(86,218</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,955,356</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,760,073</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Deferred income taxes reflect the net tax effects of temporary differences between the carrying amount of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes. Significant components of the Company’s net deferred income taxes are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Years ended December 31</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">DEFERRED TAX ASSETS:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Allowance for Doubtful Accounts</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>31,073</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>161</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">263(A) Adjustment</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>31,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>17,421</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accrued Expenses</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>212</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>9,485</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Inventory Reserve</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>9,725</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>34,978</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accretion of Acquisition Notes</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>8,156</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Unrealized loss</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,282</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">State Tax Credit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>27,867</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>48,770</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">NOL Carryforward and Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>162,005</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>249,772</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total deferred tax assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>268,591</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>368,743</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">DEFERRED TAX LIABILITIES:</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Fixed and Intangible Assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>860,592</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>824,822</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Unrealized Gain</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>12,713</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>14,146</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accretion</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>8,639</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total deferred tax liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>873,305</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>847,607</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total net deferred tax liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(604,714</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(478,864</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company regularly assesses the likelihood that the deferred tax assets will be recovered from future taxable income. The Company considers projected future taxable income and ongoing tax planning strategies, then records a valuation allowance, if deemed necessary, to reduce the carrying value of the net deferred taxes to an amount that is more likely than not able to be realized. Based upon the Company’s assessment of all available evidence, including the previous two years of taxable income and loss after permanent items, estimates of future profitability, and the Company’s overall prospects of future business, the Company determined that it is more likely than not that the Company will realize all of its deferred tax assets in the future. The Company will continue to assess the potential realization of deferred tax assets on an annual basis, or an interim basis if circumstances warrant. If the Company’s actual results and updated projections vary significantly from the projections used as basis for this determination, the Company may need to change the valuation allowance against the gross deferred tax assets.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company, through XPEL Ltd., has net operating losses of approximately </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$841,003</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> available to apply against future taxable income. These losses have no expiration date. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:italic;font-weight:bold;text-decoration:none;">Uncertain Tax Positions</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company recognizes the tax effects of an uncertain tax position only if it is more likely than not to be sustained based solely upon its technical merits at the reporting date. Interest and penalties associated with unrecognized tax benefits are recorded within income tax expense. The unrecognized tax benefit is the difference between the tax benefit recognized and the tax benefit claimed on the Company’s income tax return. The Company has reviewed its prior year returns and believes that all material tax positions in the current and prior years have been analyzed and properly accounted for and that the risk that additional material uncertain tax positions have not been identified is remote.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Goodwill and other intangibles acquired in taxable asset purchases are amortized for tax purposes over allowable periods as prescribed by applicable regulatory jurisdictions.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company is subject to income taxes in the U.S. federal jurisdiction, and various states and foreign jurisdictions. Tax regulations within each jurisdiction are subject to the interpretation of the related tax laws and regulations and require significant judgment to apply. The Company is still subject to U.S. federal, state and local, or non-U.S. income tax examinations by tax authorities for the years 2012 and after. There are no ongoing or pending IRS, state or foreign examinations.</span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Income before income taxes classified by source of income was as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Domestic</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>15,375,731</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>10,008,013</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">International</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,574,697</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,473,292</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>16,950,428</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>11,481,305</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 15375731 10008013 1574697 1473292 16950428 11481305 100000 -200000 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The provision for income taxes differs from the United States federal statutory rate as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Income before income taxes</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>16,950,428</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>11,481,305</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Statutory rate</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>21</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>21</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">%</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,559,590</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,411,074</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">State taxes net of federal benefit</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>31,446</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>183,468</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Nondeductible/nontaxable items</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>115,679</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign tax rate differential</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>45,994</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>81,474</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign derived intangible income benefit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(287,606</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Return to provision estimated revision</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(358,986</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other - net</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(150,761</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>84,057</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Income tax expense</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,955,356</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,760,073</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 16950428 11481305 0.21 0.21 3559590 2411074 31446 183468 115679 0 45994 81474 287606 0 358986 0 -150761 84057 2955356 2760073 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The components of the income tax provision (benefit) are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Years ended December 31</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Current Income Tax Expense</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Federal</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,412,157</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,182,415</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>518,528</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>431,638</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">State</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>3,068</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>232,238</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total Current Income Tax Expense</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,933,753</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,846,291</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Deferred Income Tax Expense/(Benefit)</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Federal</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>99,870</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(65,801</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Foreign</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(78,267</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(20,417</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Total Deferred Income Tax Expense/(Benefit)</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>21,603</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(86,218</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,955,356</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>2,760,073</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 2412157 2182415 518528 431638 3068 232238 2933753 2846291 99870 -65801 -78267 -20417 21603 -86218 2955356 2760073 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Deferred income taxes reflect the net tax effects of temporary differences between the carrying amount of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes. Significant components of the Company’s net deferred income taxes are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Years ended December 31</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;"><br/></span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">DEFERRED TAX ASSETS:</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Allowance for Doubtful Accounts</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>31,073</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>161</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">263(A) Adjustment</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>31,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>17,421</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accrued Expenses</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>212</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>9,485</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Inventory Reserve</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>9,725</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>34,978</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accretion of Acquisition Notes</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>8,156</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Unrealized loss</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>6,282</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">State Tax Credit</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>27,867</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>48,770</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">NOL Carryforward and Other</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>162,005</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>249,772</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total deferred tax assets</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>268,591</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>368,743</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">DEFERRED TAX LIABILITIES:</span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Fixed and Intangible Assets</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>860,592</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>824,822</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Unrealized Gain</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>12,713</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>14,146</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accretion</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>8,639</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total deferred tax liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>873,305</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>847,607</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Total net deferred tax liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(604,714</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(478,864</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 31073 161 31427 17421 212 9485 9725 34978 0 8156 6282 0 27867 48770 162005 249772 268591 368743 860592 824822 12713 14146 0 8639 873305 847607 604714 478864 841003 COMMITMENTS AND CONTINGENCIES<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">CONTINGENCIES</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">In the ordinary course of business activities, the Company may be contingently liable for litigation and claims with customers, suppliers and former employees. Management believes that adequate provisions have been recorded in the accounts where required. Management also has determined that the likelihood of any litigation and claims having a material impact on our results of operations, cash flows or financial position is remote.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;font-style:normal;font-weight:bold;text-decoration:none;">SUPPLY AGREEMENT</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Through our Amended and Restated Supply Agreement that we entered into with our primary supplier in March 2017, we have exclusive rights to commercialize, market, distribute and sell its automotive aftermarket products through March 21, 2020, which term automatically renews for successive two year periods thereafter unless terminated at the option of either party with </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>two months</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">’ notice. During such term, we have agreed to use commercially reasonable efforts to purchase a minimum of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$5,000,000</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> of products quarterly from this principal supplier, with a yearly minimum purchasing requirement of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$20,000,000</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">.</span></div> P2M 5000000 20000000 LEASES<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">We lease space under non-cancelable operating leases for office space, warehouse facilities, and installation locations. These leases do not have significant rent holidays, rent escalation provisions, leasehold improvement incentives, or other build-out clauses. Neither do these leases contain contingent rent provisions. We also lease vehicles and equipment to support our global operations. We have elected the practical expedient to combine lease and non-lease components. We have also elected to adopt the package of practical expedients that allow us not to reassess whether expired leases are or contain leases, not to reassess the lease classification of existing leases, and not to reassess initial direct costs for existing leases.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Some of our leases contain options to renew. The exercise of lease renewals is at our sole discretion; therefore, the renewals to extend the lease terms are not included in our ROU assets as it is not reasonably certain that they will be exercised. We regularly evaluate the renewal options and, when they are reasonably certain of exercise, we include the renewal period in our lease term.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">As most of our leases do not provide an implicit rate, we use our incremental borrowing rate based on the information available at the lease commencement date in determining the present value of the lease payments. We have a centrally managed treasury function; therefore, based on the applicable lease terms and the current economic environment, we apply a portfolio approach for determining the incremental borrowing rate.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Balance sheet information related to operating leases is as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:80%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,079,110</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Current portion of operating lease liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,126,701</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Noncurrent portion of operating lease liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>4,009,949</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Total operating lease liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,136,650</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">We had operating lease expense of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$1,210,969</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> for </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the year ended December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Variable lease payments and short-term lease expenses for the same period were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$492,771</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$157,253</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively, and we made cash payments of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$1,235,264</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, on leases subject to the accounting treatment described above in Note 1.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Weighted-average information associated with the measurement of our remaining operating lease obligations is as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"/></tr><tr><td style="width:80%;"/><td style="width:19%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Weighted-average remaining lease term (in years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5.6</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Weighted-average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5.84</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">%</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table summarizes the maturity of our operating lease liabilities as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:80%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,060,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,084,622</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,011,538</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>908,901</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>580,481</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,077,086</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">     Total operating lease payments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,722,841</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Less: interest</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>(586,191</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Total operating lease liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,136,650</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">For </span><span style="font-family:Arial;font-size:10pt;color:#000000;">the year ended December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, rent expense related to operating leases was approximately </span><span style="font-family:inherit;font-size:10pt;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$1,209,208</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Future minimum lease payments, under non-cancelable operating leases as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> were as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>869,492</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2020</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>736,169</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>667,551</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>601,593</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>528,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,372,388</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>4,775,620</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Balance sheet information related to operating leases is as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:80%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Operating lease right-of-use assets</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,079,110</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:20px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Current portion of operating lease liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,126,701</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Noncurrent portion of operating lease liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>4,009,949</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Total operating lease liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,136,650</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 5079110 1126701 4009949 5136650 1210969 492771 157253 1235264 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Weighted-average information associated with the measurement of our remaining operating lease obligations is as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;padding-left:0px;text-indent:0px;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="3"/></tr><tr><td style="width:80%;"/><td style="width:19%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31, 2019</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Weighted-average remaining lease term (in years)</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5.6</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Weighted-average discount rate</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5.84</span></span></div></td><td style="vertical-align:bottom;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">%</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> P5Y7M6D 0.0584 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The following table summarizes the maturity of our operating lease liabilities as of </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;">:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:80%;"/><td style="width:1%;"/><td style="width:18%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2020</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,060,213</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,084,622</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,011,538</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>908,901</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2024</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>580,481</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,077,086</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">     Total operating lease payments</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,722,841</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Less: interest</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>(586,191</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Total operating lease liabilities</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>5,136,650</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 1060213 1084622 1011538 908901 580481 1077086 5722841 586191 5136650 1209208 Future minimum lease payments, under non-cancelable operating leases as of <span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> were as follows:</span><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="4"/></tr><tr><td style="width:86%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>869,492</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2020</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>736,169</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2021</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>667,551</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2022</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>601,593</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">2023</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>528,427</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">Thereafter</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>1,372,388</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><span>4,775,620</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 869492 736169 667551 601593 528427 1372388 4775620 BUSINESS COMBINATIONS<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Business combinations completed before year-end - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">The Company completed the following acquisitions during the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:13%;"/><td style="width:1%;"/><td style="width:50%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:13%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Acquisition Date</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Name/Location/Description</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Purchase Price</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Acquisition Type</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Acquisition Purpose</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">April 1, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">9352-4692, Quebec, Inc., Quebec City, Quebec, Canada - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$87,248</span></span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">June 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">eShields, LLC, La Verne, CA, USA - Antimicrobial film distributor</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$496,982</span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Asset Purchase</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Product line expansion</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">August 1, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">9341-9182 Quebec, Inc., Pointe Claire, Quebec, Canada - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$363,239</span></span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">August 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">9846905 Canada, Inc., Calgary, Alberta, Canada - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$332,798</span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">November 1, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Apogee, Corp., Yilan City, Yilan County, Taiwan - Paint protection and window film distributor</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$638,552</span></span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">December 20, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Paintshield, Ltd., Salisbury, Wiltshire, United Kingdom - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$127,623</span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Asset Purchase</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The total purchase price for acquisitions completed during the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Paintshield, Ltd.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018 Acquisitions</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Purchase Price</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>127,623</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>831,934</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Promissory note</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>998,668</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Forgiveness of debt</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>88,216</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>127,623</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,918,818</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Allocation</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>41,407</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>155,434</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Inventory</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>494,663</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Prepaid expenses and other assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>78,631</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,038</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>167,622</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade name</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>25,918</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Acquired patterns</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>52,083</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Customer relationships</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>609,751</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Goodwill</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>44,584</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>576,173</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accounts payable</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(126,715</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(78,148</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>127,623</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,918,818</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Intangible assets acquired in the Paintshield acquisition have a weighted average useful life of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>2 years</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. Intangible assets acquired in </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> have a weighted average useful life of </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>9 years</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">. </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Goodwill for these acquisitions relates to the expansion into new geographical areas as well as the addition of a new distribution channel. The goodwill also represents the acquired employee knowledge of the various </span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">markets, distribution knowledge by the employees of the acquired businesses, as well as the expected synergies resulting from the acquisitions.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">Acquisition costs incurred related to these acquisitions were immaterial and were included in selling, general and administrative expenses.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The acquired companies were consolidated into our financial statements on their respective acquisition dates. Due to the timing of the transaction, the aggregate revenue and operating income (loss) of the Paintshield acquisition were immaterial to our </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> consolidated financial statements. The aggregate revenue and operating income (loss) of our </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> acquisitions consolidated into our </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> consolidated financial statements from the respective dates of acquisition were </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$613,701</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>$43,030</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively. The following unaudited financial information presents our results, including the estimated expenses relating to the amortization of intangibles purchased, as if the acquisitions during the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> had occurred on January 1, </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:91.83673469387756%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Twelve Months Ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019 (Unaudited)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018 (Unaudited)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>130,507,185</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>111,048,518</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>13,981,033</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>8,480,919</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The pro forma unaudited results do not purport to be indicative of the results which would have been obtained had the acquisition been completed as of the beginning of the earliest period presented or of results that may be obtained in the future. In addition, they do not include any benefits that may result from the acquisition due to synergies that may be derived from the elimination of any duplicative costs.</span></div> <span style="font-family:Arial;font-size:10pt;color:#000000;">The Company completed the following acquisitions during the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">:</span><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:13%;"/><td style="width:1%;"/><td style="width:50%;"/><td style="width:1%;"/><td style="width:10%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:13%;"/></tr><tr><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Acquisition Date</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Name/Location/Description</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Purchase Price</span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Acquisition Type</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Acquisition Purpose</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">April 1, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">9352-4692, Quebec, Inc., Quebec City, Quebec, Canada - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$87,248</span></span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">June 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">eShields, LLC, La Verne, CA, USA - Antimicrobial film distributor</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$496,982</span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Asset Purchase</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Product line expansion</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">August 1, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">9341-9182 Quebec, Inc., Pointe Claire, Quebec, Canada - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$363,239</span></span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">August 1, 2018</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">9846905 Canada, Inc., Calgary, Alberta, Canada - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$332,798</span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">November 1, 2018</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Apogee, Corp., Yilan City, Yilan County, Taiwan - Paint protection and window film distributor</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$638,552</span></span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Share Purchase</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr><tr><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">December 20, 2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Paintshield, Ltd., Salisbury, Wiltshire, United Kingdom - Paint protection and window film installation shop</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>$127,623</span></span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Asset Purchase</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:top;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Local market expansion</span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 87248 496982 363239 332798 638552 127623 <div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The total purchase price for acquisitions completed during the years ended </span><span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> are as follows:</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:73%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:11%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Paintshield, Ltd.</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018 Acquisitions</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Purchase Price</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>127,623</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>831,934</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Promissory note</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>998,668</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Forgiveness of debt</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>88,216</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>127,623</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,918,818</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;height:18px;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;font-weight:bold;">Allocation</span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Cash</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>41,407</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accounts receivable</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>155,434</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Inventory</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>494,663</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Prepaid expenses and other assets</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>78,631</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Property and equipment</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>5,038</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>167,622</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Trade name</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>25,918</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Acquired patterns</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>52,083</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Customer relationships</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>609,751</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Goodwill</span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>44,584</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>576,173</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Accounts payable</span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(126,715</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;padding-left:2px;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Other accrued liabilities</span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>—</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="2" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>(78,148</span></span></div></td><td style="vertical-align:bottom;border-bottom:1px solid #000000;padding-right:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>127,623</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>1,918,818</span></span></div></td><td style="vertical-align:bottom;border-bottom:3px double #000000;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 127623 831934 0 998668 0 88216 127623 1918818 0 41407 0 155434 0 494663 0 78631 5038 167622 25918 0 52083 0 0 609751 44584 576173 0 126715 0 78148 127623 1918818 P2Y P9Y 613701 43030 The following unaudited financial information presents our results, including the estimated expenses relating to the amortization of intangibles purchased, as if the acquisitions during the years ended <span style="font-family:Arial;font-size:10pt;color:#000000;">December 31, 2019</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> had occurred on January 1, </span><span style="font-family:Arial;font-size:10pt;color:#000000;">2018</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, respectively:</span><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;font-size:10pt;"><div style="padding-left:0px;text-indent:0px;line-height:normal;padding-top:10px;"><table cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:91.83673469387756%;border-collapse:collapse;text-align:left;"><tr><td colspan="8"/></tr><tr><td style="width:71%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:1%;"/><td style="width:12%;"/><td style="width:1%;"/></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">Twelve Months Ended</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="7" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">December 31,</span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2019 (Unaudited)</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td colspan="3" style="vertical-align:bottom;border-bottom:1px solid #000000;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;border-top:1px solid #000000;"><div style="text-align:center;font-size:8pt;"><span style="font-family:Arial;font-size:8pt;font-weight:bold;">2018 (Unaudited)</span></div></td></tr><tr><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Revenue</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>130,507,185</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;background-color:#cceeff;padding-top:2px;padding-bottom:2px;border-top:1px solid #000000;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>111,048,518</span></span></div></td><td style="vertical-align:bottom;background-color:#cceeff;border-top:1px solid #000000;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr><tr><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">Net income</span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>13,981,033</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;padding-right:2px;"><div style="overflow:hidden;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"> </span></div></td><td style="vertical-align:bottom;padding-left:2px;padding-top:2px;padding-bottom:2px;"><div style="text-align:left;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;">$</span></div></td><td style="vertical-align:bottom;padding-top:2px;padding-bottom:2px;"><div style="text-align:right;font-size:9pt;"><span style="font-family:Arial;font-size:9pt;"><span>8,480,919</span></span></div></td><td style="vertical-align:bottom;"><div style="text-align:left;font-size:10pt;"><span style="font-family:inherit;font-size:10pt;"><br/></span></div></td></tr></table></div><span style="font-family:Arial;font-size:10pt;"><br/></span></div> 130507185 111048518 13981033 8480919 SUBSEQUENT EVENTS.<div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Business combinations completed after year-end - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">On</span><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;"> </span><span style="font-family:Arial;font-size:10pt;color:#000000;">February 1, 2020</span><span style="font-family:Arial;font-size:10pt;color:#000000;"> the Company purchased the shares of Protex Centre, a previously independent paint protection installation shop based in Montreal, Quebec, Canada. In this acquisition, the Company acquired </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>100%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> of the shares of Protex Centre. This acquisition was completed in order to expand the Company’s direct penetration in the greater Quebec market. The Company funded this purchase with cash of CAD </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>2,000,000</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> and unsecured promissory notes issued to the sellers with a combined total face value of CAD </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>1,250,000</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;">.</span></div><div style="line-height:120%;padding-bottom:16px;padding-top:0px;text-align:justify;text-indent:24px;font-size:10pt;"><span style="font-family:Arial;font-size:10pt;color:#000000;">The allocation of the purchase price has not yet been finalized as there was insufficient time between the closing of the purchase and the release of this Annual Report.</span></div><span style="font-family:Arial;font-size:10pt;color:#000000;font-style:italic;font-weight:bold;">Buy-out of minority interest - </span><span style="font-family:Arial;font-size:10pt;color:#000000;">On </span><span style="font-family:Arial;font-size:10pt;color:#000000;">February 1, 2020</span><span style="font-family:Arial;font-size:10pt;color:#000000;">, the Company purchased the remaining </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>15%</span></span><span style="font-family:Arial;font-size:10pt;color:#000000;"> minority interest of XPEL Ltd., the subsidiary of the Company operating in the United Kingdom. The purchase price of this minority interest was GBP </span><span style="font-family:Arial;font-size:10pt;color:#000000;"><span>600,000</span></span>. 1 2000000 1250000 0.15 600000 XML 72 R29.htm IDEA: XBRL DOCUMENT v3.20.1
INTANGIBLE ASSETS, NET (Tables)
12 Months Ended
Dec. 31, 2019
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedules of Intangible Assets
The following table presents geographic Intangible assets, net by region as of December 31:
 
2019

2018
United States
$
2,074,235

 
$
1,891,479

Canada
1,431,247

 
1,652,347

Europe
81,612

 
1,773

Other
233,366

 
258,427

Consolidated
$
3,820,460

 
$
3,804,026


The following table presents the anticipated useful lives of intangible assets:
Trademarks
 - 10 years
Software
 - 5 years
Trade name
 - 10-15 years
Contractual and customer relationships
 - 9-10 years
Non-compete
 - 3-5 years
Other
 - 10 years

Intangible assets consists of the following:
 
December 31, 2019
 
December 31, 2018
Trademarks
$
309,395

 
$
289,734

Software
2,288,062

 
1,635,731

Trade name
492,408

 
457,766

Contractual and customer relationships
3,010,480

 
2,947,264

Non-compete
268,459

 
261,914

Other
208,012

 
150,267

Total cost
6,576,816

 
5,742,676

Less: Accumulated amortization
2,756,356

 
1,938,650

Intangible assets, net
$
3,820,460

 
$
3,804,026


Schedule of Future Amortization Expense of Finite-Lived Intangible Assets Based on the carrying value of definite-lived intangible assets as of December 31, 2019, we estimate our future amortization expense will be as follows:
2020
$
796,029

2021
703,624

2022
617,107

2023
576,160

2024
461,122

Thereafter
$
666,417


XML 73 R21.htm IDEA: XBRL DOCUMENT v3.20.1
COMMITMENTS AND CONTINGENCIES
12 Months Ended
Dec. 31, 2019
Commitments and Contingencies Disclosure [Abstract]  
COMMITMENTS AND CONTINGENCIES COMMITMENTS AND CONTINGENCIES
CONTINGENCIES
In the ordinary course of business activities, the Company may be contingently liable for litigation and claims with customers, suppliers and former employees. Management believes that adequate provisions have been recorded in the accounts where required. Management also has determined that the likelihood of any litigation and claims having a material impact on our results of operations, cash flows or financial position is remote.
SUPPLY AGREEMENT
Through our Amended and Restated Supply Agreement that we entered into with our primary supplier in March 2017, we have exclusive rights to commercialize, market, distribute and sell its automotive aftermarket products through March 21, 2020, which term automatically renews for successive two year periods thereafter unless terminated at the option of either party with two months’ notice. During such term, we have agreed to use commercially reasonable efforts to purchase a minimum of $5,000,000 of products quarterly from this principal supplier, with a yearly minimum purchasing requirement of $20,000,000.
XML 74 R25.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES (Policies)
12 Months Ended
Dec. 31, 2019
Accounting Policies [Abstract]  
Basis of Presentation
Basis of Presentation - The consolidated financial statements are prepared in conformity with GAAP and include the accounts of the Company and its wholly-owned or majority-owned subsidiaries. The ownership interest of non-controlling participants in subsidiaries that are not wholly-owned is included as a separate component of stockholders’ equity. The non-controlling participants’ share of the net income is included as “Income attributable to noncontrolling interest” on the Consolidated Statements of Income and Comprehensive Income. Intercompany accounts and transactions have been eliminated.
The functional currency for the Company is the United States dollar. The assets and liabilities of each of its foreign subsidiaries are translated into U.S dollars using the exchange rate at the end of the balance sheet date. Revenues and expenses are translated at the average exchange rates for the period. Gains and losses from translations are recognized in foreign currency translation included in accumulated other comprehensive income in the accompanying consolidated balance sheets. Foreign currency exchange gains and losses are recorded in other expense, net in the accompanying consolidated statements of income.
Segment Reporting
Segment Reporting - Management has concluded that our chief operating decision maker (“CODM”) is our chief executive officer. The Company’s CODM reviews the entire organization’s consolidated results as a whole on a monthly basis to evaluate performance and make resource allocation decisions. Management views the Company’s operations and manages its business as one operating segment.
Use of Estimates
Use of Estimates - The preparation of these consolidated financial statements in conformity to U.S. GAAP requires management to make judgments and estimates and form assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated financial statements and reported amounts of revenues and expenses during the reporting period. Estimates and underlying assumptions are reviewed on an ongoing basis. Actual outcomes may differ from these estimates under different assumptions and conditions.
Foreign Currency Translation
Foreign Currency Translation - The financial statements of subsidiaries located outside of the U.S. are generally measured using the local currency as the functional currency. Assets and liabilities of these subsidiaries are translated at the rates of exchange at the balance sheet date. Income and expense items
are translated at average monthly rates of exchange. The resultant translation adjustments are included in accumulated other comprehensive income, a separate component of stockholders’ equity.
Cash and Cash Equivalents
Cash and Cash Equivalents - Cash and cash equivalents consist of cash and highly liquid investments with an original maturity of three months or less at the date of purchase. The balance, at times, may exceed federally insured limits.
Accounts Receivable Accounts Receivable - Accounts receivable are shown net of an allowance for doubtful accounts of $182,488 and $133,696 as of December 31, 2019 and 2018, respectively. The Company evaluates the adequacy of its allowances by analyzing the aging of receivables, customer financial condition, historical collection experience, the value of any collateral and other economic and industry factors. Actual collections may differ from historical experience, and if economic, business or customer conditions deteriorate significantly, adjustments to these reserves may be required. When the Company becomes aware of factors that indicate a change in a specific customer’s ability to meet its financial obligations, the Company records a specific reserve for credit losses.
Inventory Inventory - Inventory is comprised of film, film-based products and supplies which are valued at lower of cost or net realizable value, with cost determined on a weighted average cost basis. We provide reserves for discontinued and excess inventory based upon historical demand, forecasted usage, estimated customer requirements and product line updates.
Property, Plant and Equipment Property, Plant and Equipment - Property and equipment are recorded at cost, except property and equipment acquired in connection with the Company’s business combinations, which are recorded at fair value on the date of acquisition. Expenditures which improve or extend the life of the respective assets are capitalized, whereas expenditures for normal repairs and maintenance are charged to operations as incurred.
Goodwill
Goodwill -  Goodwill represents the excess purchase price over the fair value of tangible net assets acquired in business combinations after amounts have been allocated to intangible assets. Goodwill is not amortized, but is reviewed for impairment during the last quarter of each year, or whenever events occur or
circumstances change that would more likely than not reduce the fair value of a reporting unit below its carrying amount, using a discounted cash flow model and comparable market values of each reporting unit. Goodwill balances are assessed at the subsidiary level.
Intangible Assets
Intangible Assets - Intangible assets consist primarily of software, customer relationships, trademarks and non-compete agreements. These assets are amortized on a straight-line basis over the period of time in which their expected benefits will be realized. Indefinite-lived trade names are not amortized but are tested at least annually for impairment.
Impairment of Long-Lived Assets
Impairment of Long-Lived Assets - The Company reviews and evaluates long-lived assets for impairment when events or circumstances indicate that the carrying amount of an asset may not be recoverable. When the undiscounted expected future cash flows are not sufficient to recover an asset’s carrying amount, the fair value is compared to the carrying value to determine the impairment loss to be recorded. Long-lived assets to be disposed of are reported at the lower of carrying amount or fair value, less the cost to sell. Fair values are determined by independent appraisals or expected sales prices based upon market participant data developed by third party professionals or by internal licensed real estate professionals. Estimates of future cash flows and expected sales prices are judgments based upon the Company’s experience and knowledge of operations. These estimates project cash flows several years into the future and are affected by changes in the economy, real estate market conditions and inflation.
Revenue Recognition
Revenue Recognition - Our revenue is comprised primarily of product and services sales where we act as principal to the transaction.  All revenue is recognized when the Company satisfies its performance obligation(s) by transferring control/final benefit from the promised product or service to our customer. Due to the nature of our sales contracts, the majority of our revenue is recognized at a point in time. A performance obligation is a contractual promise to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. Revenue is recorded net of returns and allowances. Sales, value add, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are accounted for as a fulfillment obligation, on a net basis, and are included in cost of sales. See Note 2, Revenue Recognition, for additional accounting policies and transition disclosures.
When the Company transfers goods or services to a customer, payment is due, subject to normal terms, and is not conditional on anything other than the passage of time. Typical payment terms range from due upon receipt to 30 days, depending on the type of customer and relationship. At contract inception, the Company expects that the period of time between the transfer of goods to the customer and when the customer pays for those goods will be less than one year, which is consistent with the Company’s standard payment terms. Accordingly, the Company has elected the practical expedient under ASC 606 to not adjust for the effects of a significant financing component. As such, these amounts are recorded as receivables and not contract assets.
Revenue recognition
The Company recognizes revenue when it satisfies a performance obligation by transferring control of the promised goods and services to a customer, in an amount that reflects the consideration that it expects to receive in exchange for those goods or services. This is achieved through applying the following five-step model:
Identification of the contract, or contracts, with a customer;
Identification of the performance obligations in the contract;
Determination of the transaction price;
Allocation of the transaction price to the performance obligations in the contract; and
Recognition of revenue when, or as, the Company satisfies a performance obligation.
The Company generates substantially all of its revenue from contracts with customers, whether formal or implied. Sales taxes collected from customers are remitted to the appropriate taxing jurisdictions and are excluded from sales revenue as the Company considers itself a pass-through conduit for collecting and remitting sales taxes, with the exception of taxes assessed during the procurement process of select inventories. Shipping and handling costs are included in cost of sales.
Revenue from product and services sales are recognized when control of the goods is transferred to the customer which occurs at a point in time typically upon shipment to the customer or completion of the service. This standard applies to all contracts with customers, except for contracts that are within the scope of other standards, such as leases, insurance, collaboration arrangements and financial instruments.
Based upon the nature of the products the Company sells, its customers have limited rights of return which are immaterial. Discounts provided by the Company to customers at the time of sale are recognized as a reduction in sales as the products are sold.
Warranty obligations associated with the sale of our products are assurance-type warranties that are a guarantee of the product’s intended functionality and, therefore, do not represent a distinct performance obligation within the context of the contract. Warranty expense is included in cost of sales.
We apply a practical expedient to expense direct costs of obtaining a contract when incurred because the amortization period would have been one year or less.
Under its contracts with customers, the Company stands ready to deliver product upon receipt of a purchase order. Accordingly, the Company has no performance obligations under its contracts until its customers submit a purchase order. The Company does not enter into commitments to provide goods or services that have terms greater than one year. In limited cases, the Company does require payment in advance of shipping product. Typically, product is shipped within a few days after prepayment is received. These prepayments are recorded as contract liabilities on the consolidated balance sheet and are included in accounts payable and accrued liabilities (Note 9). As the performance obligation is part of a contract that has an original expected duration of less than one year, the Company has applied the practical expedient under ASC 606 to omit disclosures regarding remaining performance obligations.
Research and Development Research and Development - Research costs are charged to operations when incurred. Software development costs, including costs associated with developing software patterns, are expensed as incurred unless the Company incurred these expenses in the development of a new product or long-lived asset.
Advertising Costs Advertising costs - Advertising costs are charged to operations when incurred.
Provisions and Warranties Provisions and Warranties - We provide a warranty on our products. Liability under the warranty policy is based on a review of historical warranty claims. Adjustments are made to the accruals as claims data experience warrant.
Income Taxes
Income Taxes - Deferred income tax assets and liabilities are computed for differences between the financial statement and tax bases of assets and liabilities that will result in taxable or deductible amounts in the future. Such deferred income tax asset and liability computations are based on enacted tax laws and rates applicable to periods in which the differences are expected to affect taxable income. Valuation allowances are established when necessary to reduce deferred tax assets to the amounts expected to be realized. Income tax expense is the tax payable or refundable for the period plus or minus the change during the period in deferred and other tax assets and liabilities.
Accumulated Other Comprehensive Income (Loss) (AOCI)
Accumulated Other Comprehensive Income (Loss) (“AOCI”) - The Company reports comprehensive income (loss) that includes net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to expenses, gains and losses that are not included in net earnings. These amounts are also presented in the consolidated statements of comprehensive income. As of December 31, 2019 and 2018, respectively, AOCI relates to foreign currency translation adjustments.
Earnings Per Share
Earnings Per Share - Basic earnings per share amounts are calculated by dividing net income for the year attributable to common stockholders by the weighted average number of common shares outstanding
during the year. Diluted earnings per share amounts are calculated by dividing the net income attributable to common stockholders by the weighted average number of shares outstanding during the period plus the weighted average number of shares that would be issued on the conversion of all the dilutive potential ordinary shares into common shares.
Business Combinations
Business Combinations - Identifiable assets acquired and liabilities and contingent liabilities assumed in a business combination are measured initially at their fair values at the acquisition date, irrespective of the extent of any non-controlling interest. The excess of the fair value of the consideration transferred including the recognized amount of any non-controlling interest in the acquiree, over the fair value of the Company’s share of the identifiable net assets acquired is recorded as goodwill. Acquisition-related expenses are recognized separately from the business combination and are recognized as general and administrative expense as incurred.
Fair Value Measurements
Fair Value - Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Assets and liabilities measured at fair value are classified using the following hierarchy, which is based upon the transparency of inputs to the valuation as of the measurement date:
Level 1:
Valuation is based on observable inputs such as quoted market prices (unadjusted) for identical assets or liabilities in active markets.
Level 2:
Valuation is based on inputs such as quoted market prices for similar assets or liabilities in active markets or other inputs that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the financial instrument.
Level 3:
Valuation is based upon other unobservable inputs that are significant to the fair value measurement.
In making fair value measurements, observable market data must be used when available. When inputs used to measure fair value fall within different levels of the hierarchy, the level within which the fair value measurement is categorized is based on the lowest level input that is significant to the fair value measurement
Financial instruments include cash and cash equivalents (level 1), accounts receivable, accounts payable and long-term debt. The carrying amounts of cash and cash equivalents, accounts receivable, accounts payable and short-term borrowings approximate fair value because of the near-term maturities of these financial instruments. The carrying value of the Company’s notes payable approximates fair value due to the relatively short-term nature and interest rates of the notes. For discussion of the fair value measurements related to goodwill refer to Note 5, Goodwill, of the consolidated financial statements for periods ended December 31, 2019 and December 31, 2018.
The estimated fair value of debt is based on market quotes for instruments with similar terms and remaining maturities (Level 2 inputs and valuation techniques).
ASC 820 prioritizes the inputs to valuation techniques used to measure fair value into the following hierarchy:
Level 1 – Observable inputs such as quoted prices (unadjusted) in active markets for identical assets or liabilities.
Level 2 – Inputs other than the quoted prices in active markets that are observable either directly or indirectly, including: quoted prices for similar assets and liabilities in active markets; quoted prices for identical
or similar assets and liabilities in markets that are not active or other inputs that are observable or can be corroborated by observable market data.
Level 3 – Unobservable inputs that are supported by little or no market data and require the reporting entity to develop its own assumptions.
Recently Adopted Accounting Pronouncements and Recent Accounting Pronouncements Issued and Not Yet Adopted
Recently Adopted Accounting Pronouncements
In February 2016, the Financial Accounting Standards Board issued ASU 2016-02, “Leases” (“the new lease standard” or “ASC 842”), which requires an entity to recognize both assets and liabilities arising from financing and operating leases, along with additional qualitative and quantitative disclosures. The new lease standard requirements were effective for annual reporting periods beginning after December 15, 2018, including interim periods within that reporting period. The Company adopted this standard effective January 1, 2019. In adopting this standard, the Company elected the package of practical expedients afforded thereby. This election allowed the Company, among other things, to carry forward prior lease classifications. Pursuant to the adoption of this standard, Right-Of-Use (“ROU”) assets and operating lease liabilities (current and long-term portions) as of December 31, 2019 were $5,079,110 and $5,136,650, respectively. Refer to Note 15 for additional information related to the adoption of this standard.
Recent Accounting Pronouncements Issued and Not Yet Adopted
In June 2016, the FASB issued ASU 2016-13, “Financial Instruments — Measurement of Credit Losses on Financial Instruments”, which requires measurement and recognition of expected credit losses for financial assets held. As a smaller reporting company, ASU 2016-13 is effective for the Company beginning January 1, 2023 and is required to be applied prospectively. We are currently evaluating the impact that ASU 2016-13 will have on our consolidated financial statements.
XML 75 R44.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Impairment of Long-Lived Assets (Details)
12 Months Ended
Dec. 31, 2019
USD ($)
installation_location
Dec. 31, 2018
USD ($)
Accounting Policies [Abstract]    
Number of locations closed | installation_location 1  
Impairment of intangible assets, excluding goodwill | $ $ 30,480 $ 0
XML 76 R40.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Inventory (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Accounting Policies [Abstract]    
Inventory reserve $ (120,826) $ (185,056)
XML 77 R48.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Recently Adopted Accounting Pronouncements (Details)
Dec. 31, 2019
USD ($)
Accounting Policies [Abstract]  
Operating lease right-of-use assets $ 5,079,110
Total operating lease liabilities $ 5,136,650
XML 78 R63.htm IDEA: XBRL DOCUMENT v3.20.1
DEBT - Schedule of Debt Maturities (Details)
Dec. 31, 2019
USD ($)
Debt Disclosure [Abstract]  
2020 $ 463,025
2021 300,873
2022 42,969
2023 0
2024 0
Thereafter 0
Long-term Debt $ 806,867
XML 79 R67.htm IDEA: XBRL DOCUMENT v3.20.1
STOCK OPTIONS - Narrative (Details) - shares
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Maximum number of allocated and made available to be issued shares as a percent 10.00%  
Number of stock options issued (in shares)   0
Option    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Maximum term in number of years 10 years  
XML 80 R4.htm IDEA: XBRL DOCUMENT v3.20.1
Consolidated Statements of Income - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Revenue    
Total revenue $ 129,932,881 $ 109,920,614
Cost of Sales    
Total cost of sales 86,426,622 76,484,009
Gross Margin 43,506,259 33,436,605
Operating Expenses    
Sales and marketing 7,584,377 6,802,241
General and administrative 18,834,535 14,828,361
Total operating expenses 26,418,912 21,630,602
Operating Income 17,087,347 11,806,003
Interest expense 96,646 168,389
Foreign currency exchange loss 40,273 156,309
Income before income taxes 16,950,428 11,481,305
Income tax expense 2,955,356 2,760,073
Net income 13,995,072 8,721,232
Income attributed to non-controlling interest 17,447 8,698
Net income attributable to stockholders of the Company $ 13,977,625 $ 8,712,534
Earnings per share attributable stockholders of the Company    
Earnings per share basic and diluted (in dollars per share) $ 0.51 $ 0.32
Weighted Average Number of Common Shares    
Weighted-average common shares outstanding, basic and diluted (in shares) 27,612,597 27,612,597
Product revenue    
Revenue    
Total revenue $ 112,204,739 $ 95,526,350
Cost of Sales    
Total cost of sales 82,308,256 73,656,389
Service revenue    
Revenue    
Total revenue 17,728,142 14,394,264
Cost of Sales    
Total cost of sales $ 4,118,366 $ 2,827,620
EXCEL 81 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( .-$<% ?(\\#P !," + 7W)E;',O+G)E;'.MDD^+ MPD ,Q;]*F?L:5\'#8CUYZ6U9_ )Q)OU#.Y,A$[%^>X>];+=44/ 87O+>CT?V M/S2@=AQ2V\54C'X(J32M:OP"2+8ECVG%D4)6:A:/FD=I(*+ML2'8K-<[D*F' M.>RGGD7E2B.5^S3%":4A+,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C M-R."?S]PN -02P,$% @ XT1P4"?HAPZ" L0 ! !D;V-0&UL38Y-"\(P$$3_2NG=;BGH06) L$?!D_>0;FP@R8;-"OGYIH(? MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/ M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+"" MWTG] E!+ P04 " #C1'!07,%,7>\ K @ $0 &1O8U!R;W!S+V-O M&ULS9+/3L,P#(=?!>7>.FW%@*C+!<0))"0F@;A%B;=%:_XH,6KW]K1E MZX3@ 3C&_N7S9\FMCD*'A"\I1$QD,5\-KO-9Z+AF>Z(H ++>HU.Y'!-^;&Y# M*,7?/Q,W0PS&K!# MAYXR5&4%3$X3XW'H6K@ )AAA&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T M$W-I=MNTF83M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY M\^XN8NB&B)3R> +]O6N[!3+UES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4? M,_@5RU2-9:,!$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA M5,+$P&IG/U9KQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M M&N#C\7@XMLO2BW A(5M>5 TR 6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T M1G*=D 4. #?$T4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH]5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J M-2S%UGB5P/&MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2. MFJW"$2M"/F(9-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$. M$9)>-T(^8LZ+D!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]07 M2N0/)J<_Z3(T!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL! M_]':-\*K^(+ .7\N?<^E[[GT/:'2MSAD M6R4)RU3393>*$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W MF)&Y"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>( M\J(A[J&&F,_#0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R M4E5@,5O& RN0HGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K> M9;'!51W/55ORL+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4X MOT4SMA*7&+SCYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5 MYYN MTB42%(JP# 4A%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+ MA=OB5,V[&KXF8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'YA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> , M?-2K6J5D*Q$_2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H: M,]6+K#F-"F]!U4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ M 5!+ P04 " #C1'!0\$FL)(0# "/$0 & 'AL+W=OMG[N#KX=5&'=WI JU;[LF,K-Y45M5%%U+ MYC[^#(V&HV=7.-U_:_VS[;SIS%/6J*TN?N>']KP*YV%P4,?L6K2/^O9%#1U* MPF#H_3?UH@HC[^[$>.QUT=C?8']M6ET.K9A;*;/7?IM7=GOKKT@YE.$"/A3P ML6 >?U@@A@(Q%K"/'>10()V"J.^*?3:[K,W6RUK?@KJ/]Y)UHXC=2?/T]]U) M^[#M-?-X&G/V91TOHY>NF4&QZ15\HF"C(C)MCP8<&6PX*>?O#;94(=XK=E0A M\2T(V$=AR\6D/,'E$I9+6RXGY:GSB*ABA@T2:)"0\KEC0!4+;)!"@Y24,S=E M(/'$/(,6,UKOY+P!$H$MYM!B3NNE8P$DGJ@7T&)!Z]VL@<03-HLQ<3%MPL,XHR)^D#C2]]##RC. N2/M#XTL?,,TJT(.D#C2]]C#VC4 N2/M#X MTL?D,\JU(.D#C2=]CMGGE&OAIH\TGO0Y9I]3KJ6;/M+X_M@\;P@<,P^IUS+Q'4!&I\+9I]3KJ4[QI#&-\8P^YQR+1S2G5"QC'5^$PP^)Q"G3#7!/SI>R8Q@<$7%.K$@64W M:!*KJ?KWP(58I'/?M"PP_H*BG3C(; =-.O'BLY3Q9.$9; )/ H("GKB3,])X M)F?A>8&G@"USP)" HX(E+#M"DL<<%3P*" IZZ MHQIIN,<%SP*"$IZZDS/2N--F-/E:+55]LBL!3;#7U\HN0TS.CJL-]]Q^[?Z7 M]TL5W[/ZE%=-\*1;\\ULOVR/6K?*W$K\R3S6L\H.XT&ACFVW.S/[=;]$T!^T M^C(L?T3C&LSZ'U!+ P04 " #C1'!0\R@^L64$ #G$P & 'AL+W=O M0A/]X_N.'7XP7Q[;[UF]C'&;?FWK? MW\^WPW"X*XK^:1N;JO_8'N(^_?+<=DTUI-ONI>@/7:PV4U!3%ZB4+9IJMY\O M%].SAVZY:%^'>K>/#]VL?VV:JOMW%>OV>#^'^?N#+[N7[3 ^*):+0_42_XS# MU\-#E^Z*2RN;71/W_:[=S[KX?#__!>[66H\!D^*O73SV5]>SL93'MOTVWORV MN9^KT5&LX],P-E&EK[>XCG4]MI1\_'-N='[).09>7[^W_GDJ/A7S6/5QW=9_ M[S;#]G[NY[--?*Y>Z^%+>_PUG@LJY[-S];_'MU@G^>@DY7AJZW[ZG#V]]D/; MG%M)5IKJ^^E[MY^^C^?VW\/D #P'X"4 S \#]#E DX#BY&PJ]5,U5,M%UQYG MW6FT#M4X*>!.I\Y\&A].?3?]EJKMT].WI2T7Q=O8SEFR.DGP2H*WBC576'N1 M%"G_Q02*)G"*U]?Q3H[78KR>XLUUO"=%G"3E)-E/$H!2J> TJ84+=7" F"G( MB(8,-Q2(H9/$7N5Q4!KE#?'#=659&@U:]E.*?DKFQRGBIV1YH 23.HEVD"!4 M+@0+(#NRHB/+'0%Q9%DBU &T(<[77.>4=>!E.TZTX[@=,LE7CJ4).DTA8H:K ME.S#BSX\]T'Z?^59!FW1*Z>H%2Y$4!J\S?1,$!T%[HA,T55@B8P"8]G,X3JM MO4&565J@9&(I[H@A2_%5DR8I0&8P( -'X*DL306\*H_*6#H>C529M0(@E06<2 M'*S).)(QBARCGA(;.1U-VIX%DQD1S.PD.1T])39RZ&GED$[NM: +UJ/., 1E M-B)GHZ>\1DX\2.O5([(!XCIVA$CCPZYW\H MN?4A Q$Y$ ,%(@H[26>!(NI_9;=^9&HBIV:@U$2!FFE?Z\$R2S^AO'4E8Q,Y M-@/%)G(F?@C*.TO_D4A"@*!4669,R?1$3L] Z8F-U>9R4\?G8;QT MZ;H['3V=;H;V<#Y6*RYG>\O_ %!+ P04 " #C1'!0 KPPNCL" "\!P M& 'AL+W=OUWU*.0"96V5NV^_MG )U$[QA?3/\YSS.Z6T:4O9&\\!A/-> ME37?N+D0S1HA?LRA(GQ!&ZCES)FRB@C991?$&P;DI$U5B7R,(U21HG:S5(_M M69;2JRB+&O;,X=>J(NSO%DK:;ES/_1AX*2ZY4 ,H2QMR@9\@?C5[)GMHB'(J M*JAY06N'P7GC?O+6.P\K@U:\%M#R4=M1I1PH?5.=;Z>-BQ41E' 4*@21CQOL MH"Q5),GQIP_J#CF5<=S^B/Y%%R^+.1 ..UK^+DXBW[@KUSG!F5Q+\4+;K] 7 M%+I.7_UWN$$IY8I$YCC2DNM_YWCE@E9]%(E2D??N6=3ZV78S8=S;[ :_-_B# MP5L^- 2](3 ,J"/3I7XF@F0IHZW#NK?5$+4IO'4@%_.H!O7:Z3E9+9>CMRQ9 MI>BFXO22;2?Q1Q)_JMC=*Z)HD""9?X#PK1"^]@=CB,3N#ZS^0/N7([^'L5%% MIXFUIM8:O,#8,RIYIIK +*TP2PN,D6;;::)1&@FL?P;/#.$$*;0BA18DXQUN MP[M,)LLCQ00BLD)$%HC @(B>0CQ23"!B*T1L@5@:$/&LG?),-8%966%6%IC0 M@%G]=P.8*S-'.8%*K%")!2HRH)*[5'X<>7Z8Q ;3#.$$25X(UD,*6Z!B\YC" M:94@(R*%_+[R.55.G1*. O5C&6; M=?=)UQ&TZ>]*-%S8V3]02P,$% @ XT1P4 >@@&4N! $A( !@ !X M;"]W;W)K&,PQS#*QNMOO2GXT9DJ]- MW?;K]#P,EYD\C!W99G4I3^8/,_QY M>>M<*[M[.52-:?O*MDEGCNOTE;_L$$>#"?%796[]PWLRAO)N[9>Q\>MAG;*1 MD:G-?AA=E.[Q87:FKD=/CL<_B]/T/N9H^/C^S?O/4_ NF/>R-SM;_UT=AO,Z MU6ER,,?R6@^?[>T7LP24I\D2_6_FP]0./C)Q8^QMW4^_R?[:#[99O#@J3?EU M?E;M]+S-_RBQF-$&L!C W8#+_S7 Q0"_&TPC9#.S*=2?RJ'ZF_URTO>O]V'"F5]G'Z&C!;&<,/&+NB,QYOP\!U!!;",SA M>8!=B)"2'@')('"RQZ<@"MJ!(!V(R8%X=,"9-PLS)I\P[8R!HD#0FGOA$$A6 M%, D%S2IG"25AU'QR,1+TH$DHO*F?CMCY -7+05("7Z.0J"20@L6FVA%4E($ M)?0HJ6 D@3F3D!<>I1"(*%!*EM.4-$E)$],-(T"I\ M6A@,5D@II,\IA'&I44=JE],JR0F9!%\F%]!3^3)0Z#,*83QWR8LQHB62YP0C M[C/*B>"+G G0/BD"Z58ZQYBB<%IX.:&\OJ!N>:BH4.2N^H+D$4#EEI.*K2=: M>CFAO>!K+P\UE6/A)DL%U1DC=P12*^<0(U\8H 4=6/B1@L@6"6CQ!4)\P1??!:0? MZ+)/N;^_(5&QO ,MN@!$1)%4 2V00 @D^ ()H?*YXG$9*/S5\R/(9UJT2@*A MDL@B+FA9 V+K%U-&H"4(J,V?K]4+Z&D=.Z%B0J&_UR*@3JQ NIU9A!>M0J!^ M?%<+M&0 (1G!OA8(+0!D&@)Y)9 *I?L6Q;Z.0"L'$,J!DB]7VR\PG@2]_JW_&4W M7T]\=S/?EOQ>=J>J[9-W.[AS_G0:/UH[&,?3J6^:G$UYN#=JN_F6 M8FX,]K+?;0AEQMT-V.8___F.#8=LH.R55P#">6N;CN_<2HA^ MZWF\K* E_)'VT,DG9\I:(N2473S>,R G'=0V'O)][+6D[MP\TVL'EF?T*IJZ M@P-S^+5M"?NSAX8..S=P[PO/]:42:L'+LYY(E_[ Y,R;74YU"QVO:>

B>";2@WLU2+>N_T,UDMEZNW/ A1YMV4T:39 MCQJTU,P*3[K/*9 MQ1ZMPHT$Q5J!L3U#:"TBU/'A/T6$=H/(:A!I@VAI@$)C M%T9-K#7=E&2SB?W$K&8M3!,D_9"=*+82Q6NB,#*(1@U>)$)I'&P,\&(M>\!^ MB),/=@A;>;"%)S9X\"I1$*'41]@0%FMA&@1)'&_L1(F5*+$088,HL1'%Z28P MA,5:*(FD[(,S2ZU$J84H,8C2U(N/O 5VT?V0.R6] M=D)]3HO5N>4^(=4DC/6];,5CYWRW&?OX=\(N=<>=(Q6R!>E&<:94@(3T'R5? M)7\=\Z2!LU##1([9V$#'B:#]]&_PYA]4_A=02P,$% @ XT1P4%:XN2*? M P <@\ !@ !X;"]W;W)KX^TXG300,X W1GYM^O 3<3[$HV\Q*.?%7E*M>! M%T?3?&OW6G?1CZJLVV6\[[K#;9*TF[VN\O:3.>C:_K,S395W]K%Y3=I#H_/M M(%25"4&()U5>U/%J,;Q[;E8+\]:51:V?FZA]JZJ\^;G6I3DN8QQ_O/A:O.Z[ M_D6R6ASR5_V7[OX^/#?V*9FT;(M*UVUAZJC1NV7\![[-L.@%!N*?0A_;D_NH M=^7%F&_]P^?M,D;]BG2I-UVO(K>7=WVGR[+79-?QW2F-)YN]X.G]A_;'P7GK MS$O>ZCM3_EMLN_TREG&TU;O\K>R^FF.FG4,LCISW7_2[+BW>K\3:V)BR'7ZC MS5O;FD$Y"\?V+#CXW8,^WN?=_EJT9ACU(PI M>LC[2L"WTF;0IG\Y),SPG]WBUKY]7V$J%\E[K\@QZY$A,T;-F3N 2=&((;,F4>(H7/F"6+2.9-!#)N8Q,9M"AX!@T<&!>E, ?<",S)\8.J!(8)C MPI2 +5'0$@4L"6^;1H:=6,(D58Q*?TDAV"_)B^ ]H [35&+N@0\ J% JL)SE008HQ%*FA,.13<'(IH,2.HNLA!4P4 $+MX9X+JU9 MD 12$(MY'CU G,T5ZF7NTY5:8S "1)F4JED'[80O)&(2FX M/[R@93+;;J1? QFD$G/))3H3/'A"8_8;[0$>@QB8@V%[" ?2_[0'>";A<"B% M[4%B[J-7DQGCQ3#A__.F$Y;E>B35;:W!^#IH=2[KK\5 M]KX93X'C0V<.[H2;3,?LU7]02P,$% @ XT1P4%CVGYHP!0 N!@ !@ M !X;"]W;W)K/P_#_G*QZ.^?\[;I/[7[O"O?/+;=MAG*;?>TZ/==;AZF0MO- M HWQBVVSWLUOKJ9GG[N;J_9EV*QW^7,WZU^VVZ;[=YDW[=OU'.;O#[ZLGYZ' M\<'BYFK?/.4_\O#G_G-7[A:G6A[6V[SKU^UNUN7'Z_DM7*XLC04FQ5_K_-:? M7<_&4.[:]NMX\^O#]=R,CO(FWP]C%4WY>,VKO-F,-14?_QPKG9_:' N>7[_7 M_O,4? GFKNGSJMW\O7X8GJ_G<3Y[R(_-RV;XTK[]DH\!N?GL&/UO^35OBGQT M4MJX;S?]]']V_](/[?982[&R;;X=/M>[Z?/M6/][,;T '@O@J0#X_RU QP+T MO8"=@C\XFT+]J1F:FZNN?9MUA]':-^.D@$LJG7D_/ISZ;OJN1-N7IZ\WX/!J M\3I6=-0L#QH\UYP4BU+[J0G4FEBB*,X:6$F%]WH+I 9!4WGZ$ 3I%5BU CM5 M8,\K0&*]<-"X2;,[:"@E9P*/1@ICP%(?ZHZ&@V@F*'<_L!-E.!##,]4K*O,5H*G,RJG:B8B$6Y)*(/2Q-G@Z74'B ME2]+2Y#6)VMH,"58W,)DIM4<%6;'3H\0=(SBJ&06*08@D$Q M.13,DB>'MF(*=82B1&CD8X&2C!=ENAIK^6@H2@R^+'<53SI#46,HSP908:A) MWCE(W)14^I!\B*[B2L=3Y'G>"M-B88,027W M0AVFJ,&4+^LH$>FCY6G(2I&53 Y#J#C208H2I.#YPHX*26&<;J*?%&$D2%3K M)AVEJ"2I N^HL-0'Z_B;OM*$%,LPUV:ESE)44E4!>%1@6A(;J;+D5\ 8.7I(X#0YB,'Q!483>6%_+S$BG+BG4#9RZI. 4#/&- M@B(K*W39Q-?FE(Y=4K ;.'9)TC0X3,'RI4 1VE \53! .G5)H6[DU"4)4TH! M$/G^11/:%).I+ 6D4Y<4ZHI11_.$TL"+3I:RJ*WP TM MSLY[M[E[FH[&^]E]^[(;QI/5LZ>GX_=;',^+V?,E7*X.A^C?JSF=$_K M73^[:X>AW4YGQH]M.^3BTGPJ_IYS\W"ZV>3'8;P,Y;H[G*4?;H9V?_R=8''Z ML>+F/U!+ P04 " #C1'!0Q<>4 ;@\O[+?Q]JQEC-W M<&?DDZA\F],])174O)?^P0Q?8:KG$R53\=_A A+#@Q+,41KIXDK*WGFC)A:4 MHOC+N L=]V&\V:83;!V03H!T!NQC'C8FBLJ_<,^+S)J!V+'W'0]/O#FDV)LR M.&,KXAV*=^B]%)O]/F.70#3%',>8=!DS1S!DGU.D:RF.Z3MXN@[?KBK<1OCV M'X4WZP2[58)=)-A]6.)*S$WR7Q*VZ*D"V\1I=\?&'-5!XJ[*].#QIO& M6,4]FK9EKK? ZPA2DJ6[W3537&A:YM%WLF5N!B^%AI,E;E"*VQ]'D&8L:$+? M'$^B[7QPL#+O>0M?P'_M3Q8MMK#40H%VPFABH2GH77(X9B$^!GP3,+K5F81* MSL8\!^-C7=!=$ 02*A\8.&X7N )DYZ9(R -?G-_:'6#O6X@,3PH 1S5$:ZN))J<-ZHF06E*/XZ M[4+'?9QNLIL9M@U(9T"Z &YC'C8EBLH_<,_+W)J1V*GW/0]/G!Q2[$T5G+$5 M\0[%._1>RN1]DK-+()ICCE-,NHY9(ABR+RG2K13']"]XN@W?;RK<1_C^-X7_ M(,@V";)(D/VWQ*V8_1])V*JG"FP;I\F1R@PZ3O+*NPSL71K?Y%?X-.V?N6V% M=N1L/+YL[']CC >4LKO"$>KP@RV&A,:'XPV>[31FD^%-/_\@MGSC\B=02P,$ M% @ XT1P4 ZA;-ZT 0 T@, !D !X;"]W;W)K&UL?5/;;IPP$/T5RQ\0+RRY= 5(V515*R72*E7;9R\,8,47:ILE^?N. M#:&T17VQ/>,Y9\Z,Q_EH[(OK #QY55*[@G;>]P?&7-6!XN[*]*#QIC%6<8^F M;9GK+? Z@I1DZ6YWPQ07FI9Y])ULF9O!2Z'A9(D;E.+V[0C2C 5-Z+OC6;2= M#PY6YCUOX2OX;_W)HL46EEHHT$X832PT!;U/#L [P)&MSJ34,G9F)=@ M?*D+N@N"0$+E P/'[0(/(&4@0AD_9TZZI S ]?F=_5.L'6LY\* M>D=)#0T?I'\VXV>8Z[FF9"[^$2X@,3PHP1R5D2ZNI!J<-VIF02F*OTZ[T'$? MIYLLF6';@'0&I O@+N9A4Z*H_"/WO,RM&8F=>M_S\,3)(<7>5,$96Q'O4+Q# M[Z5,/F0YNP2B.>8XQ:3KF"6"(?N2(MU*<4S_@:?;\/VFPGV$[_]0>+U-D&T2 M9)$@^V^)6S$W?R5AJYXJL&V<)DW<5;W-ZH*2" M6O3*/^'P$:9Z;BF9BO\,5U A/"H).4I4+JVD[)U'/;$$*5J\CKLT:1_&F]O= M!%L'\ G 9\ AY6%CHJ3\O?"BR"P.Q(Z][T1\XNV1A]Z4T9E:D>Z">!>\UV)[ M?Y>Q:R2:8DYC#%_&S!$LL,\I^%J*$_\'SM?ANU6%NP3?_:'PL$ZP7R78)X+] M?TMA;,=QVPT/';3#V+S-RY^ 5!+ P04 " #C M1'!02[IPU+0! #2 P &0 'AL+W=O'%IM5*JG!>&D-<5#G]'Y[/.TC/@%^2!C\XDQB)1=K7Z+QM^#U9,*IJ+%Z[A+D_9AO+G=3;1U M I\(?"8<4APV!DJ9?Q)!%)FS W%C[SL1GWA[Y-B;,CI3*](=)N_1>RWP03-V MC4(3YC1B^ *SG1$,U><0?"W$B?]#Y^OTW6J&NT3?+:-_/*P+[%<%]DE@_]\2 MUS!_%\D6/=7@FC1-GI2V-VF2%]YY8.]Y>I,_\'':GX1KI/'D8@.^;.I_;6T M3&5S@R/4X@>;#05UB,<[/+MQS$8CV&[Z06S^QL5O4$L#!!0 ( .-$<%#5 MR1#;M $ -(# 9 >&PO=V]R:W-H965T(,R*7[]P.29MD6[0M@X_?\ M;$P^H7FQ'8 CKUKUMJ"=<\.1,5MUH(6]P0%Z?].@T<)YT[3,#@9$'4%:,9XD M[Y@6LJ=E'GUG4^8X.B5[.!MB1ZV%^7D"A5-!#_3-\23;S@4'*_-!M/ 5W+?A M;+S%5I9::NBMQ)X8: IZ?SB>LA ? [Y+F.SF3$(E%\278'RJ"YH$0:"@>N^UY G/V340+3&G M.89O8@YK!//L:PJ^E^+$_X'S?7BZJS"-\/0/A>D^0;9+D$6"[+\E[L5D?R5A MFYYJ,&V<)DLJ'/LXR1OO.K#W\1'9[_!YVK\(T\K>D@LZ_[*Q_PVB R\EN?$C MU/D/MAH*&A>.[_W9S&,V&PZ'Y0>Q]1N7OP!02P,$% @ XT1P4,A("%FU M 0 T@, !D !X;"]W;W)K&UL?5-A;]L@$/TK MB!]0')(V561;:EI5G;1)4:MMGXE]ME'!N(#C[M_WP*[G;=:^ '?<>_?N.-+! MV%?7 'CRKE7K,MIXWQT8=J)&E[ ?^].%BTV MLY120^ND:8F%*J-WF\-Q%^)CP \)@UN<2:CD;,QK,+Z4&4V"(%!0^, @<+O M/2@5B%#&V\1)YY0!N#Q_LC_&VK&6LW!P;]1/6?HFH[>4E%")7OEG,SS!5,\U M)5/Q7^$""L.#$LQ1&.7B2HK>>:,G%I2BQ?NXRS;NPWC#]Q-L'< G )\!MS$/ M&Q-%Y0_"BSRU9B!V['TGPA-O#AQ[4P1G;$6\0_$.O9><)]8XQO!% MS&:.8,@^I^!K*8[\'SA?AV]7%6XC?/N'PIMU@MTJP2X2[/Y;XEK,_J\D;-%3 M#;:.T^1(8?HV3O+".P_L'8]O\CM\G/9OPM:R=>1L/+YL[']EC >4DESA"#7X MP69#0>7#<8]G.X[9:'C333^(S=\X_P!02P,$% @ XT1P4#A(0GZU 0 MT@, !D !X;"]W;W)K&UL?5-A;]P@#/TKB!]0 M$N[6W4Y)I%ZG:9-6Z=1IVVCSM0WP,^"%A=*LS"95X!Z4" M$%!">8HC7)Q)>7@O-$S"TK1XF7:91?W<;K9I3-L&\!G %\ AYB'38FB M\H_"BR*S9B1VZGTOPA.G1XZ]*8,SMB+>H7B'WFO!DT/&KH%HCCE-,7P5DRX1 M#-F7%'PKQ8G_ ^?;\-VFPEV$[_Y0^&&;8+])L(\$^_^6N!&3)G\E8:N>:K!- MG"9'2C-T<9)7WF5@[WA\D]_AT[0_"-O(SI&+\?BRL?^U,1Y02G*#(]3B!UL, M!;4/Q_=XMM.8388W_?R#V/*-BU]02P,$% @ XT1P4*Y5MGZS 0 T@, M !D !X;"]W;W)K&UL?5-AC]0@$/TKA!]P;-D] MO6S:)K=GC"::;,ZHG]EVVI(#I@+=GO]>H+U>U>H78(9Y;]X,0SZB?7(=@"?/ M6AE7T,[[_LB8JSK0PMU@#R;<-&BU\,&T+7.]!5$GD%:,[W9OF!;2T#)/OK,M M9=OYZ&!EWHL6OH#_VI]ML-C"4DL-QDDT MQ$)3T/OL>#K$^!3P3<+H5F<2*[D@/D7C8UW0710$"BH?&438KO 2D6B(./' MS$F7E!&X/K^POT^UAUHNPL$#JN^R]EU![RBIH1&#\H\X?H"YGEM*YN(_P154 M"(]*0HX*E4LKJ0;G4<\L08H6S],N3=K'Z>:6S[!M )\!? ' ME+G%D=BI][V(3YP=>>A-%9VI%>DNB'?!>RUYEN7L&HGFF-,4PU73?UO$#T$*;N;,$)=^&"+H:#Q\?@V MG.TT9I/AL9]_$%N^&PO=V]R:W-H965T)W^?0$3QVVMO@ SS#ES9AB*29L7VP,X]"J%LB7N MG1N.A-BZ!\GLC1Y ^9M6&\F<-TU'[&" -1$D!:&[W1V1C"M<%=%W-E6A1R>X M@K-!=I22F5\G$'HJ<8;?'$^\ZUUPD*H86 ??P'T?SL9;9&%IN 1EN5;(0%OB M^^QXRD-\#/C!8;*K,PJ57+1^"<;GIL2[( @$U"XP,+]=X0&$"$1>QL_$B9>4 M ;@^O[%_C+7[6B[,PH,6S[QQ?8D/FLE&X)SU]@E3/+4:I^"]P!>'#@Q*? MH];"QA75HW5:)A8O1;+7>>>?'6>Z\5S?*"7 -1BCG-,705DRT1Q+,O*>A6BA/] M!TZWX?M-A?L(W_^A\':;(-\DR"-!_M\2MV+N_DI"5CV58+HX31;5>E1QDE?> M96#O:7R3]_!YVK\RTW%ET44[_[*Q_ZW6#KR4W8T?H=Y_L,40T+IP_.#/9AZS MV7!Z2#^(+-^X^@U02P,$% @ XT1P4)P=/$JU 0 T@, !D !X;"]W M;W)K&UL?5-A;]P@#/TKB!]0+ERVWDY)I%ZG:9,V MZ=1IW6)<=3 M&N)CP*.$T:W.)%1R,>8I&%^JG.Z"(%!0^L @<+O"/2@5B%#&KYF3+BD#<'U^ M8?\4:\=:+L+!O5$_9>7;G!XHJ: 6@_(/9OP,E&".TB@7 M5U(.SAL]LZ 4+9ZG779Q'Z>;=#_#M@%\!O %<(AYV)0H*O\HO"@R:T9BI][W M(CQQ(MG.XW99'C3 MSS^(+=^X^ -02P,$% @ XT1P4#*H.8ZS 0 T@, !D !X;"]W;W)K M&UL?5-A;]P@#/TKB!]0>M>IL3EOG^@-CMFQ! M"WN%/73^ID:CA?.F:9CM#8@J@K1B/$D^,BUD1XLL^DZFR'!P2G9P,L0.6@OS M<@2%8TYW]-7Q()O6!0I,0B5GQ,=@W%4Y38(@4%"ZP"#\=H%;4"H0>1E/,R==4@;@^OS*_B76 M[FLY"PNWJ'[)RK4YO::D@EH,RCW@^!7F>CY0,A?_#2Z@?'A0XG.4J&Q<23E8 MAWIF\5*T>)YVV<5]G&[VZ0S;!O 9P!? =M^+\,2[ M _>]*8,SMB+>>?'6>R\%YTG&+H%HCCE.,7P5LULBF&=?4O"M%$?^'YQOP_>; M"O<1OO]+X1OYTTV"-!*D[Y:X%?.O2K;JJ0;3Q&FRI,2ABY.\\BX#>\/CF_P) MGZ;]7IA&=I:&PO=V]R:W-H965T M( 7J=_WP$[KMM:>0%FF'/FS#!DH[$OK@7PY$U)[7+:>M\?&'-E"TJX*].# MQIO:6"4\FK9AKK<@J@A2DO'=[H8IT6E:9-%WLD5F!B\[#2=+W*"4L+^.(,V8 MTSU]=SQW3>N#@Q59+QKX!OY[?[)HL86EZA1HUQE-+-0YO=L?CFF(CP$_.AC= MZDQ")6=C7H+Q5.5T%P2!A-('!H';!>Y!RD"$,EYG3KJD#,#U^9W]%"".4HC75Q).3AOU,R" M4I1XF_9.QWV<;I)DAFT#^ S@"^ VYF%3HJC\07A19-:,Q$Z][T5XXOV!8V_* MX(RMB'9.P2B.:8XQ3#5S'[)8(A^Y*";Z4X\O_@?!N>;"I,(CSY M2V&Z39!N$J21(/VPQ*V8ZW^2L%5/%=@F3I,CI1ETG.25=QG8.Q[?Y$_X-.U? MA6TZ['S9V/_:& \H97>%(]3B!UL,";4/QT]XMM.8388W_?R#V/*-B]]0 M2P,$% @ XT1P4$QMLZ6T 0 T@, !D !X;"]W;W)K&UL?5-A;]L@$/TKB!]0$I*V461;:EI5F[1)4:=MGXE]ME&!\P#' MW;\?8-?S-FM?@#ONO7MW'-F ]M6U )Z\:65<3EOONR-CKFQ!"W>#'9AP4Z/5 MP@?3-LQU%D250%HQOMG<,2VDH466?&=;9-A[)0V<+7&]UL+^/('"(:=;^NYX MD4WKHX,562<:^ +^:W>VP6(S2R4U&"?1$ MU3A^VQ],^QJ> ;Q(&MSB36,D% M\34:'ZN<;J(@4%#ZR"#"=H5'4"H2!1D_)DXZIXS Y?F=_3G5'FJY" >/J+[+ MRK43,5_@BNH$!Z5A!PE*I=64O;.HYY8@A0MWL9= MFK0/X\TMGV#K #X!^ PXI#QL3)24/PDOBLSB0.S8^T[$)]X>>>A-&9VI%>DN MB'?!>RTXO\O8-1)-,:-G4_QK10Y"RN0DCU(8/-AL*:A^/]^%LQS$;#8_=](/8_(V+7U!+ P04 M " #C1'!06046%K,! #2 P &0 'AL+W=ONXCZE MFT.B;1-H(M"%<(AQR!PH9OZ%.5851D_(S+T?6'CBW9'ZWM3!&5L1[WSRUGNO M%:6?"W(-0@ESFC%TA=DM".+5EQ!T*\2)_D.GV_1\,\,\TO,U/<^V!?:; OLH ML/]OB1N8_.\BR:JG$DP7I\FB6H\J3O+*NPSL+8UO\@Z?I_V>F8XKBR[:^9>- M_6^U=N!3R6[\"/7^@RV&@-:%XR=_-O.8S8;30_I!9/G&U1]02P,$% @ MXT1P4-^9PEZT 0 T@, !D !X;"]W;W)K&UL M?5-A;]P@#/TKB!]0[DC:5:M.IL3EOG^@-CMFQ!"WN%/73^ID:CA?.F:9CM#8@J M@K1B?+>[85K(CA99])U,D>'@E.S@9(@=M!;F]0@*QYSNZ9OC43:M"PY69+UH MX >XG_W)>(LM+)74T%F)'3%0Y_1N?SBF(3X&_)(PVM69A$K.B,_!^%;E=!<$ M@8+2!0;AMPO<@U*!R,OX/7/2)64 KL]O[%]B[;Z6L[!PC^I)5J[-Z2TE%=1B M4.X1QZ\PUW--R5S\=[B \N%!B<]1HK)Q)>5@'>J9Q4O1XF7:91?W<;JYOIEA MVP ^ _@"N(UYV)0H*O\LG"@R@R,Q4^][$9YX?^"^-V5PQE;$.R_>>N^EX G/ MV"40S3''*8:O8O9+!//L2PJ^E>+(_X'S;7BRJ3")\.2=PF2;(-TD2"-!^M\2 MMV+2#TG8JJ<:3!.GR9(2ARY.\LJ[#.P=CV_R-WR:]@=A&ME9^.C+FR!2W<#79@PDV-5@L?3-LPUUD050)IQ?AF M<\>TD(866?*=;9%A[Y4T<+;$]5H+^^<$"H><;NFKXTDVK8\.5F2=:. [^!_= MV0:+S2R5U&"<1$,LU#E]V!Y/^QB? GY*&-SB3&(E%\3G:'RI$3U2U:^S>F!D@IJT2O_A,-G MF.JYI60J_BM<087PJ"3D*%&YM)*R=Q[UQ!*D:/$R[M*D?1AO^(<)M@[@$X#/ M@$/*P\9$2?E'X46161R('7O?B?C$VR,/O2FC,[4BW07Q+GBO!=_=9NP:B::8 MTQC#%S';.8(%]CD%7TMQXO_!^3I\MZIPE^"[-PKOU@GVJP3[1+!_0W#_KL2U MF,.[)&S14PVV2=/D2(F]29.\\,X#^\#3F_P+'Z?]F["--(Y73?VO$3T$ M*9N;,$)M^&"SH:#V\7@?SG8&PO=V]R:W-H965THD9P<; MU-01C>,\:EC5AMNUW7N1V[6XZ+IJ^8L,U*5IF/R[X[6X;4(2WC=>J]-9]QO1 M=MVQ$__!]<_N19I5-+$?T;2<-+L ^?O=_;/]O#F,&],\6=1 M_ZX.^KP)RS X\".[U/I5W+[P\4!9&(RG_\:OO#;P/A.CL1>ULK_!_J*T:$86 MDTK#/H9GU=KG;>2_A^$ .@90)R :A&SFGYAFV[44MT .'[]C_1V31VJ^S;[? MM)_"_F>25V;WNJ7):AU=>Z(1LQLP=(8A$R(R[),$11([N@BG.#R!&28V/)FK MERM,D$*"U!*D<_TT=HZ(,)Y#9E D P34$4&8!(OD4"0'!*DC@C 9%BF@2 $( M"Y^!4562X+,O7B$\5P\B;D#A7CT$>>Z>>)Q* M (5[^Q#DN7X"[?I$Z(*B*%R9)89FN4<&VYHD@&*A@T"E1P>[GP!K9XL.!T!Y M[-'!#8 =^?$U4$@3S:I:%;P);28].X\=A=#OA7F7P]@Y++3HQI$ZFN;Z[3]02P,$% @ XT1P4 )ZF,GN 0 M9@4 !D !X;"]W;W)K&UL=51M;YLP$/XKB!]0 M$RU)))9BQIJJ)[A6PT@<)3F@4[8E@;1?F MJ?>=59[*J^%M!V<5Z*L03/TY 9=#%F["-\=36S?&.4B>]JR&'V!^]F=E+3*S ME*V 3K>R"Q146?BP.9X2A_> YQ8&O=@'KI*+E"_.^%IF8>02 @Z%<0S,+C=X M!,X=D4WC]\09SI(N<+E_8__L:[>U7)B&1\E_M:5ILC )@Q(J=N7F20Y?8*HG M#H.I^&]P V[A+A.K44BN_3V\^LPGL3)%(8'T"F S@&) MUR&CD,_\$S,L3Y4< C7>?<_<$V^.U-Y-X9S^*OR935Y;[RVGR28E-T) M49$8(=BM1#!,C(OL49$]0K!?B6"8 RYR0$4."$&R$L$P_WF3!!5)/A+<1RL1 M#+/^\@:M_A.BCDM?/39>&=A\@#]7WR#A\GT'>FZK;3P44:VVV^)RHI M#=A4HCO[=(T=>K/!H3)N>[![-;;^:!C93U.-S*,U_PM02P,$% @ XT1P M4 \?[[74 0 G 0 !D !X;"]W;W)K&UL=51M M;]L@$/XKB!]0$AR[:61;:CI-F]1*4:=UGXE]?E'!>(#C]M\7L.MY&?MBN..Y MY[G#=Z2C5*^Z 3#H3?!.9[@QIC\0HHL&!-,WLH?.GE12"6:LJ6JB>P6L]$&" M$[K9)$2PML-YZGTGE:=R,+SMX*20'H1@ZOT(7(X9WN)/QW-;-\8Y2)[VK(8? M8'[V)V4MLK"4K8!.M[)#"JH,WV\/Q\3A/>"EA5&O]LA5.?$BZ0+7^T_VK[YV6\N9:7B0_%=;FB;#>XQ*J-C MS;,&PO=V]R:W-H965T<"CKM_/\"N:W7^ MQQ[[V[XT@'-"^V 7#D3:O69K1Q MKCLR9HL&M+ WV$'K;RHT6CAOFIK9SH H(T@KQC>;+TP+V=(\C;ZSR5/LG9(M MG VQO=;"_#V!PB&C6_KN>)1UXX*#Y6DG:O@-[D]W-MYB,TLI-;168DL,5!F] MVQY/28B/ 4\2!KLXDU#)!?$E&#_*C&Y"0J"@<(%!^.T*]Z!4(/)IO$Z<=)8, MP.7YG?U[K-W7N4><7B J9Y;2J;B?\(5E \/F7B- M I6-*REZZU!/+#X5+=[&7;9Q'\:;9#?!U@%\ O 9L(\Z;!2*F7\33N2IP8&8 ML?>="$^\/7+?FR(X8ROBG4_>>N\UYX=#RJZ!:(HYC3%\$;.=(YAGGR7XFL2) M_P?GZ_#=:H:["-\MU0^WZP3)*D$2"9*E_C[Y5.):S&<1MNBI!E/':;*DP+Z- MD[SPS@-[Q^.;?(2/T_Y+F%JVEES0^9>-_:\0'?A4-C=^A!K_P69#0>7"\:L_ MFW',1L-A-_T@-G_C_!]02P,$% @ XT1P4/'PM5[( 0 -P0 !D !X M;"]W;W)K&UL;51M;Z0@$/XKA!]0?-F]VHV:='NY MW"5WR::7:S^S.BHIB >XMO^^@-::+5^$&9YYGIF!,9^D>M$=@$&O@O>ZP)TQ MPX$0774@J+Z1 _3VI)%*4&--U1(]**"U#Q*<)%'TC0C*>ESFWG=292Y'PUD/ M)X7T* 15;T?@\,1@TIL]/5<_I6^#.;O+;>2YE&44XNCFC!'&=,LL'$*X)8]E4B"4D< MDR_A23@\#6:8^O!TJWZ7A0EV08*=)]AM];/LJL00YBXLL@^*[+\0I%%\)1+" M7+>";"Y.@&K]D]6HDF/OQV7C7:?B/O$7_PF?1^H/52WK-3I+8Y^/O^1&2@,V ME>C&YM+9*5X-#HUQVUN[5_-;G@TCAV5,R?JO*-\!4$L#!!0 ( .-$<% K M" \&PO=V]R:W-H965T1Y"2+$V2 M.Z:XT+3,H^]LR]P,7@H-9TOBXC]/-;3;#M@'I#$@7 MP"'JL$DH9O[$/2]S:T9BI][W/#SQ[IAB;ZK@C*V(=YB\0^^US)(L9]= -,>< MIIAT%;-;(ABR+Q+IEL0I_0^>;L.SS0RS",_6ZI\.VP3[38)])-BO]0]W'TK< MBKG_(,)6/55@VSA-CE1FT'&25]YE8!_2^";_PJ=I_\9M*[0C%^/Q96/_&V,\ M8"K)#8Y0AQ]L,20T/ASO\6RG,9L,;_KY!['E&Y=_ 5!+ P04 " #C1'!0 M 323;K8! #2 P &0 'AL+W=OPUG"UQHU+"_CF!-%-!#_35\=2WG0\.5N:#:.$[^!_# MV:+%5I6Z5Z!=;S2QT!3TX7 \90$? 3][F-SF3$(E%V.>@_&E+F@2$@()E0\* M K#3R5U_[KJ#WE-30B%'Z)S-] MAJ6>6TJ6XK_"%23"0R88HS+2Q954H_-&+2J8BA(O\][KN$_S3^'#DV)LJ.&,KXATF[]![+=,DR]DU""V8 MTXSA&\QA13!47T/PO1 G_A^=[]/3W0S32$^W]"3=%\AV!;(HD/U3XNV[$O

.W(Q'E\V]K\QQ@.F MDMS@"'7XP59#0N/#\0.>[3QFL^'-L/P@MG[C\B]02P,$% @ XT1P4-FY M*]C& 0 -P0 !D !X;"]W;W)K&UL;53M;ILP M%'T5RP]0 TG:+ *DIM/42:L4==KVVX$+6/4'M4UHWWZVH8RE_H-]K\\Y]\.^ MY*/2+Z8#L.A-<&D*W%G;'P@Q50>"FAO5@W0GC=*"6F?JEIA> ZT#27"2)E7KSQO2YPXA,"#I7U"M0M M%W@ SKV02^-UUL1+2$]<[S_4OX7:72UG:N!!\3^LMEV!]QC5T-"!VV>M]3?\7I(7.]J;PSM"*2-\U[*37*7DXL7FC'' M"9.M,.F"($Y]"9'%0ARS3_0L3M]$,]P$^F9-3V[C MNHP#8(;/\K<7]58@SS M)1YD%PVR^RR0)E=!8ICK3I+5Q0G0;7BR!E5JD&%<5MYE*NZSN;V>WO)D6-7/8TJ6?T7Y%U!+ M P04 " #C1'!0Q?\?![8! #2 P &0 'AL+W=O\9.&D()+[9G?,Z9B\?Y9.RSZP \>5%2NX)VW@]'QES5@1+NQ@R@\:8Q5@F/ MIFV9&RR(.I*49/QP>,>4Z#4M\^@[VS(WHY>]AK,E;E1*V%\GD&8J:$)?'8]] MV_G@8&4^B!:^@?\^G"U:;%6I>P7:]483"TU![Y/C*0OX"/C1P^0V9Q(JN1CS M'(S/=4$/(2&04/F@('"[P@-(&80PC9^+)EU#!N+V_*K^,=:.M5R$@P MQWV:;V[3A;9/X N!KX2[&(?-@6+F'X0796[-1.S<^T&$)TZ.''M3!6=L1;S# MY!UZKV6:\)Q=@]"".[F:81GJZI2?_$,!4#C&UL=53KCIP@%'X5X@,L#H[C=*(F.[O9M$F;3+;I]C>CQTL6Q *.V[OYN_J3Z]WT')O2:Q1^"X,?%A/OE-#EZ3PT)-B9X=00YR-I=/H4*,73NXJ^RR_V^)^X(_X5/C\,W*NNV4^@JM+D( M[KA60F@PI81W9E<;\QXM 8-*VVEBYG*ZE5.@13\_.'AY]?(_4$L#!!0 ( M .-$<%!2=P_!W0$ $% 9 >&PO=V]R:W-H965T7'(@%7*__OH"NM99^ M$69XYGEF1H9TE.I5-P &O0G>Z0PWQO0G0G31@&#Z0?;0V9-**L&,-55-=*^ ME3Y(<$*CZ$@$:SN+=B=K>%,[I6^'/;/+:>F]Y3/,'2%V2T(8MD7"1J2.--_PFDX/ YF&/OP>!T>1V&"?9!@[PGV?Y5X MV)08PAS#(H>@R"% D&Q$0IC'L,@Q*'(,$+S;B 0P_VM7$A1) @2[C4@(L_VI M9'4%!:C:#Y]&A1PZ/_@K[S+?3]1?X3_PZ7'XPE3==AI=I;&#X*]K):4!FTKT M8+O:V/=H,3A4QFT3NU?35$Z&D?W\X)#EUP6T\B3.2+39I(33 M3N B\[F3*C(Y&-8)."FD!\ZI^C@"DV..M_@S\=HUK7$)4F0];> 'F)_]2=F( M+"I5QT'H3@JDH,[QW?9P3!W> WYU,.K5'+E.SE*^N>"IRO'&%00,2N,4J!TN M< ^,.2%;QI]9$R^6CKB>?ZH_^MYM+V>JX5ZRWUUEVASO,:J@I@,SKW+\#G,_ M"49S\\]P 6;AKA+K44JF_1>5@S:2SRJV%$[?I[$3?ARGE22=:6%"-!.BA;#W M/F0R\I4_4$.+3,D1J6GO>^I^\?80V;TI7=)OA5^SQ6N;O11Q'&?DXH1FS''" M1"O,=D$0J[Y81"&+8_0?/0K3XV"%L:?':_JJPB\"NZ# S@OLOK2XNVHQA$G" M)DG0) D(I%Z%1*0?A[^0JNUR] MN\B?KG_PZ=Z^4-5T0J.S-/:,^I-42VG EK*YL0VW]JE8 @:U<=-;.U?3A9D" M(_OY+2#+@U3\!5!+ P04 " #C1'!0_8M]:G$" #_"@ &0 'AL+W=O MAB2\+KQ4AU+;A:C(.W;@/[G^U:VEF46#RJYJ>*LJ MT0:2[Y?A)[)8T9G=X")^5_RL;L:!1=D(\6HGWW;+,+85\9IOM95@YG'BS[RN MK9*IXV\O&@XY[<;;\57]BX,W,!NF^+.H_U0[72[#61CL^)X=:_TBSE]Y#Y2% M04__G9]X;<)M)2;'5M3*?0;;H]*BZ55,*0U[NSRKUCW/O?YU&]Y ^PUTV$!2 MQW))Y"K_S#0K*563T521KGT_HN!<$""11(G$#R3L!300H%4E!!<@>)8E*<)(-) M,B"088$)%)B,QYQ"@>D(3!0SP4EF,,D,"$RQP!P*S,=CDAB_L_$(4!CD(24> M;Q @,?-(X'>?T =H\=M/DC&T*,A'BTU"D /F'@EL 9(]0(M-0"9C:%&0CQ9[ MA0 C9+%' CN!S!Z@Q5X@\S&T*,A#2[%C*#!#YOD/IM@,E(RGI9Z+ -T$][0P MR$>+'4.!&3)?J=@,-'V %IN!H@OA RT*\M%BQU!@ABSQ2& ST.D#M-@,%-T+ M'VA1T#UM=-.ZV-;P!Y.'JE7!1FC3!;E>92^$YD8P?C+'5YIN=)C4?*_M<&K& M\M*2729:='V[&0T];_$?4$L#!!0 ( .-$<%"&SWHNNP$ -(# 9 M>&PO=V]R:W-H965T%Q,VKS8'L"A5RF4+7'O MW' BQ-8]2&;O] #*W[3:2.:\:3IB!P.LB4%2$+K;'8ED7.&JB+Z+J0H].L$5 M7 RRHY3,_#J#T%.)]_C-\<2[W@4'J8J!=? -W/?A8KQ%%I:&2U"6:X4,M"5^ MV)_.>OS&_O'6+NOYN+_$]1@VT;!3N24^?8*[G@-%<_!>X@?#PH,3G MJ+6P<47U:)V6,XN7(MEKVKF*^Y1NCG0.VPZ@GZCO31VD%L@FC'GA*$KS'Y!$,^^I*!;*<[T MO_#L<-@FR#8U9I$@6^>_?[]-D&\2Y)$@_TO!\9\B$^88,6JS2++JJ033Q6FR MJ-:CBI.\\BX#^Q ?D?R!IVG_RDS'E457[?S+QOZW6COP0G9W?H1Z_\$60T#K MPO&=/YLT9LEP>IA_$%F^&PO=V]R:W-H965T?_/TQU7@#^-'!)#9[1SLY,_:B#Y^KW/5T04"@E%H!J^4"1R!$"ZDR M?BV:[II2$[?[-_6/QKOR(G=IW%_!>X M %%P78G*43(BS*]3CD(RNJBH4BA^G=>N-^LT?TFCA68G! LA6 E^\D]"N!#" M=X+)@.;*C-4/6.(BXVQR^/QG#5C?"7\?JF:6.FAZ9[XIMT)%+T48IQFZ:*$% M()+%G"*TF0L,/KTSL[ *152 R M&5 MP.--%V9,;##]W(5=$.UV-UXLL#!,'O_B)[:6$]^7DWAV@<0JD/Q_0U*K0&JI MP+]IB T3W"1!FWM(@3?FR0JG9&-OQL4FNDZ%I\#?S6YX/D@W+F$+KK"S^ %!+ P04 M" #C1'!0QR8E@;&>QBT&;%]L!./0JA;(E[ISK]X38N@/)[)WN0?F=5AO)G$_-F=C> M &LB20I"DR0GDG&%JR+6CJ8J],4)KN!HD+U(R:7*QQ B"#DV_@]:>+YR$!'CKQ9]1:V/A%]<4Z+2<5WXIDK^/*55R'<2?? M3+1U IT(=":D_R=D$R&[(9"QLVCUD3E6%48/R(P_JV?A3J3[S ^S#L4XN[CG MW5I?O599GA7D&H0FS,.(H0L,?8\X_(O(\QE"? -S%W2U"QKYV8*?[CZM"V2K M ED4V+RSL;FQ,6*V$:,BYD-*DQW-;\RLX7;;9'OKB"QF'.[\=V;.7%ETTL[_ MKCC45FL'7C.Y\W*=?V9S(J!U(?SH8S->MC%QNI_>$9D?<_474$L#!!0 ( M .-$<% U84./0@, "H/ 9 >&PO=V]R:W-H965TJT[3--G 05< 9.TOW[&4,IC<]K M\B5@\^[YWI%G<[.3;)[;G1#*>ZG*NIW[.Z7VMT'0KG:BRML;N1>U?K*1394K M/6RV0;MO1+XV05490!@F0947M;^8F;F'9C&3!U46M7AHO/9057GS]UZ4\C3W MF?\Z\5AL=ZJ;"!:S?;X5/X3ZN7]H]"@86=9%)>JVD+77B,W?@=0?U^P"I_>O M[)^->"WF*6_%4I:_B[7:S?W4]]9BDQ]*]2A/7\0@*/:]0?TW<12EAG>9Z#56 MLFS-K[US[L_!;M%7/2XPB6?!L2,:,/<]!B88 M-B("S3XN =02]V"%P_L%EC8B2>@5D!2!)A[?B7 01"1!9 BB"0&/SHK00V(# MJ0TD"EF4Q'BFQ<8AIA&$CGQB,I_8R@<33A,D)$%R>44X2< _KD@/229*(6(A M1WY6$0(':>%H4#H.'9HOX+M5YR\@/<4M,& 7:X6:(,!7*"6!+G4TBX$ MVX7(';8!VC807:&6M@T0)Y>ME@*YUJ&]!;:WD#M.2*#- /P*M;09@#B5;+44 MR+'/ ^T8H,S@V.>1-@.&EZM%V@Q(G#:66A+D^"\46( MM!F0.D,LM13(M0[M&"3,X-K6D38#7O&UA[09D#H9++4$*#W_B@LFG4 >F"MYI6;A4>OZ&0"5'UE)U9.H666>[(4LJ393>0"JEHSN'*GD $51 M DI:5.%\ZM8V6?)>.BF84P?%]X*0Y';1? ?%K3 _O. M](]Z(\T,]"J[HF25*D052+:?A0OXO(;$$ASB9\$:=3$.[%:V0KS:R9?=+(QL M1HRS7%L):FYGMF*<6R63Q^].-.QC6N+E^%W]D]N\VQT\=9F(7! MCNWIB>L7T7QFW8;B,.AV_Y6=&3=PFXF)D0NNW#7(3TJ+LE,QJ93TK;T7E;LW M[9,8=S0_ 74$U!,(NDO '0'W! 3O$DA'( ,":+?BO%E33>=3*9I ML=;4_L6 MP6=BW,_MHC/;/3/V*+-ZGN,,3\'9"G6898M!%QC8(X!1[T,@7X@E&M%Q1JY# MK'R8^!JS]F$2?R+8NU?L!/"50.H7(%X!X@3(E4 V,*O%) Y3W3,K]H:(1R'2 M=!"AA<07$1")DABB@:<>'$8H'6:\'N-@%B<)0?Z\$V_>R=B:Y(:WJ5<@_?CA M9%Z![+%SV>AL$IAB/'P9'\*NLIEXLYEX_,C\ C#R5V;T<4?@C>*&CSWI,%C)I',T/0#_A;*_M,#5CV7;!=J)%W75XT/]FS/\"4$L#!!0 M ( .-$<%!HM>H!=P, 41 9 >&PO=V]R:W-H965TVADOC%.51GP,(R#*B]J?[4P8X_-:J&.75G4\K'QVF-5YUFJT])G_NO 4[';=_U L%H<\IW\(KNOA\=&7P7G*)NBDG5;J-IKY';IW['; M!T&]@['X5LA3>W'N]5*>E?K17WS<+/VPSTB6)$/LBS[2#J/GV-0 M_SQG[WAY_AK]O1&OQ3SGK7Q0Y?=BT^V7?NI[&[G-CV7WI$X?Y"@H\KU1_2?Y M(DMMWF>BYUBKLC6_WOK8=JH:H^A4JOS7<"QJKG&$,63JC+AA$EH$L^+0PR,CQ%'",*[=QI4PX0F"Z.+M>+<=T<7Z% M6F3D>N8Y1I#;"#J?>8ZQX6*&6HP-!XW+5HN,7&HQ6]QFB[+($0+#P),9:C$, M'#0E6RTR!HX(1AH!F+/<(P$.H,EEK;2(2N>3 Q9,,@0D<' M(@P#S5C("0R#0)UAJA8:.;@5F!AAPZ W HX0& 8Q8W$F, P"= 9;+6H?4[7! MQ::RDLW.[+];;ZV.M=G\7XR>]_AW9ML;O)D/'P@^Y\VNJ%OO675Z:VLVH%NE M.JES"6\T$GN9;\X7I=QV_6FBSYMA8SY<=.HP?G0(SE\^5G\ 4$L#!!0 ( M .-$<%!OT8?E[@$ ,@$ 9 >&PO=V]R:W-H965TF3VHN*%;:% V2O0!< M61(E* R"/:*X8WZ>6M]9Y"D?%.D8G(4G!TJQ^%L X6/F[_QWQW/7M,HX4)[V MN(&?H'[U9Z$M-*M4'04F.\X\ 77F/^R.I\3@+>"E@U$N]IZIY,+YJS&^59D? MF(2 0*F, M;+%4Y B!'2:?R9-/TYI"$N]^_J3[9V79Z!@E)])^O7*0BM-)1:="\9M;.V;7T9W< M[R?:-B&<".%,B,-/"=%$B&9"Z(IWF=E2'['">2KXZ GWLWIL9F)WC'0S2^.T MO;-GNEJIO=<\#J(478W0A"D<)EQ@=C,":?4Y1+@5H@AOZ-$A_ACBM(5)MH-$ MFW5$5B!:YGCXLBT0;PK$5B#^D,%AU0B'V5L,^ZP1R6:(Y"9$'*P:43A,L@@1 M!?$A6+7K%A6L$D&+ : @&GM7I%?R@2G3Z(5WOHX/=N)6_D)?4S=8_V7<'?^! M1=,QZ5VXTN-IAZCF7(%.,+C3N;7Z69D- K4RVWN]%^YR.4/Q?GHWT/QXY?\ M4$L#!!0 ( .-$<%"_*,/[X0$ &@$ 9 >&PO=V]R:W-H965T&Z.]S/Q6J>& D"Q;8$3>\0%Z?5)S MP8C2IFB0' 20RI(813@($L1(U_MY:GTGD:=\5+3KX20\.3)&Q-\C4#YE?NB_ M.YZ[IE7&@?)T( W\!/5K. EMH46EZACTLN.])Z#._,?P4,0&;P&_.YCD:N^9 M2LZG:^-Q?_'2Y -=QDHF.4G$K[]B2)X*/GG"7=9 MS)L(#Y%N9FF2Q\$N11%(BM0/RI"\E5%QQF9S&]2S+ <7P%*VYA M&$?[_74]:'5!#$1CW[+T2C[VRK1BY5W&Y1&;"[[R'_48N5?_(>-F\ <13==+ M[\R5?C[VDFO.%>@L@SN=8*O'?C$HU,IL[_5>N,?O#,6'>:[1\G/)_P%02P,$ M% @ XT1P4&+;W+?B 0 : 0 !D !X;"]W;W)K&UL?53;CILP$/T5RQ^PYIJP$2!M4E6MU$K15FV?'1@N6AM3VX3MW]RJ)0MATZUHD,2J@P_^8=39/$.\*N%4:WVR&9R$>+% M'KZ6&?9L0,"@T%:!FN4*)V#,"IDP_LR:>'%IB>O]F_IGE[O)Y4(5G 3[W9:Z MR7""40D5'9A^%N,7F/.),9J3_P978 9N(S$^"L&4^Z)B4%KP6<6$PNGKM+:= M6\?I9A_,M&U",!."A>#O_DL(9T+X3G#5)%-D+M5/5-,\E6)$\ ^A M*69AC:YV[LYDJXSUFD?>/B57*S1CCA,F6&'\!4&,^N(BV')Q#.[HP4<'IWO$ M;K?M(=Q,(G3\>2_P-02P,$% M @ XT1P4 >:0.HO @ $P8 !D !X;"]W;W)K&UL?55=CYLP$/PKB/<>8#X3 =)!5;52*T57M7UVR":@,YC:3KC^^]J&< 3< MOF![F9V=L?&2#I2]\AI 6&\MZ7AFUT+T>\?A50TMYD^TATZ^.5/68B&7[.+P MG@$^Z:26.,AU(Z?%36?GJ8X=6)[2JR!-!P=F\6O;8O:G $*'S/;L>^"EN=1" M!9P\[?$%OH/XT1^87#DSRZEIH>,-[2P&Y\Q^]O9EK/ :\+.!@2_FEG)RI/15 M+;Z<,MM5@H! )10#EL,-2B!$$4D9OR=.>RZI$I?S._LG[5UZ.6(.)26_FI.H M,SNQK1.<\96(%SI\ALE/:%N3^:]P R+A2HFL45'"]=.JKES0=F*14EK\-HY- MI\=AXK^GF1/0E(#F!"_Z;X(_)?CO"8$V/RK35C]B@?.4T<%BXV'U6'T3WMZ7 MFUFIH-X[_4ZZY3)ZRP-WESHW131ABA&#%AAO1CB2?2Z!3"4*M$E'CP7*+2** MS!5\HPE?Y_M+$YYK)@B,!($F"!X(O-4NC)A08SJ-B5T4NBLK6]0N3!)D%A,: MQ80&,:L=*T9,M"CC)P'R@I4: RQV0_%N=:3E%O5XI*,89W&76F 7W7:X5=%K)]17 MNXC.G>T9J;NXBA>RXXT-ZIUF;)??,+LT';>.5,B;KN_CF5(!4J3[)/75LD// M"P)GH::QG+.Q3XT+0?NI!3OS?R#_"U!+ P04 " #C1'!0%)ZTVDCF,#0G:GL#K E%4M TCM=4,JY(583< MP52%/CO!%1Q,9,]2,O-W#T(/)4G(-?'"3YWS"5H5/3O!+W"_^X/!B,XL#9>@ M+-'P"O' 9[LX]\)T>MWWSPO2E)[ V!@-IY!H;+!9Y "$^$ M-MXG3C)+^L+;_97].?2.O1R9A2]'#-YCZR4DT-?\# M+B 0[IV@1JV%#=^H/ENGY<2"5B3[&%>NPCI,_->RY8)T*DCG@G3L910*SK\R MQZK"Z"$RX^Q[YJ\XV:4XF]HGPRC"&9JWF+U469(7].*))LQ^Q*2?,.L90Y%_ M%DD71=) L+HA2+:/RP2K18)5(,@^.=C<"H@,GCS6.2Q,M"V:)0MB"T MO1/*_A=*5NMU?B]$;^[ _^(_F3EQ9:.C=GB=8>BMU@Z0,WY N@Y?U1P(:)W? M;G!OQG]K#)SNIV=#Y[=;_0-02P,$% @ XT1P4#:A5(X^ @ H08 !D M !X;"]W;W)K&UL?55=CYLP$/PKB/<>8#XO(DA' MJJJ56BFZJNVS0S8!G<'4=L+UW]GX MUJV%Z#>>QZL:6LP?: ^=?'*BK,5"'MG9XST#?-1)+?&0[R=>BYO.+7(=V[,B MIQ=!F@[VS.&7ML7L7PF$#ELW<&^!Y^9<"Q7PBKS'9_@)XE>_9_+DS2S'IH6. M-[1S&)RV[E.PV64*KP&_&QCX8N\H)P=*7]3AVW'K^DH0$*B$8L!RN<(."%%$ M4L;?B=.=2ZK$Y?[&_D5[EUX.F,..DC_-4=1;-W.=(YSPA8AG.GR%R4_L.I/Y M[W %(N%*B:Q14<+UKU-=N*#MQ"*EM/AU7)M.K\/$?TNS)Z I "32B;6:F@[IU^)MUR&;T64?"8>U=% M-&'*$8,6F&!&>))]+H%L)4JT2D?W!79K1)+8*X16$Z'.#YBE$^H=6D3G.?N$ MU&0PXJ6EC/>6 M9T6U](_&G.Z#H-H>59Y4=_JD"OMEK\L\,;99'H+J5*IDUP3E60!A*((\20M_ MM6CZ'LO50I]-EA;JL?2J,I/1Q-W1&L%J?DH'XH\_/T M6-I6T+/LTEP55:H+KU3[I?] [C>T"6@0OU)UJ0;O7EW*L]8O=>/K;NF'=48J M4UM34R3V\:HV*LMJ)IO'GX[4[\>L X?O[^R?F^)M,<])I38Z^YWNS''IQ[ZW M4_ODG)DG??FBNH*X[W75?U.O*K/P.A,[QE9G5?/K;<^5T7G'8E/)D[?VF1;- M\])^X:(+PP.@"X ^@/P_@'8!]". -<6WF36E?DI,LEJ4^N*5[;]U2NI)0>ZI M%7-;=S;:-=]LM97M?5TQ$(O@M2;J,.L6 P,,Z1&!9>^' &R(-3CA<#W QD4( M@8] T2)H$T\'\93'. %#"5A#P(85DG"D0HOA#:9H,2 EA3@FHW(09"@EA((P M/"F.)L7=I&B($PB40,R7)4()HAFRM!@Q+)8 A"RBNPVDT,>\(;D?";] & M-R01<[013L6413$BC0N$" B1?"(IW.0$<3F=6. )[DD2WR -[DHBYT@CW6D3 M11 3-MY1,"2CTNYM$TLPX%8'U^J698("MR60^>( ;DN &>)TH*MY8U=7*L?; M$P($+H04$WX W.C@&IV!G*# 70GL!FEP5P*R2[K2<'<1 4[%&+A!@()(BYV2 M!O"NU4BTL1NQ0)"#N/5!@%RN]C8"3:1%.YS<'W. MIE8;BGN2AO.EH;@GJ;M5NM)TH.$YCLNK0URK#(*SVSR#<57!X$R>J_+07%\J M;ZO/A:E/OX/>_HKT /69?M2_ME>G]J+S0=/>N[XGY2$M*N]9&WMC:,[U>ZV- MLFF&=S;!H[WJ]8U,[4W]&MGWLKWOM VC3]U=+N@OE*M_4$L#!!0 ( .-$ M<%!Y,RP@8 , %H. 9 >&PO=V]R:W-H965T<^*#/:N+K7\T1V-<]*LLJF8='YT[W25)LSV:,FO>V).I_)N]KC:@62S.F4'\\6XKZ>GVC\EURR[O#15D]LJJLU^'=_3NT?6!72(;[FY M-*/[J*7R;.V/]N'#;AV3MB)3F*UK4V3^\F(>35&TF7P=/X>D\77.-G!\_YK] M74?>DWG.&O-HB^_YSAW7<1I'.[//SH7[;"_OS4!(Q-' _J-Y,86'MY7X.;:V M:+K?:'MNG"V'++Z4,OO57_.JNU[Z-U(.87@ # %P#:#_#V!# /L;P#OR?64= MU;>9RS:KVEZBNO^W3EF[*.@=\V)NV\%.N^Z=9]OXT9<-9[!*7MI$ ^:AQ\ ( M0Z^(Q&>_3@'8% \0A$\F> P14N(S,)0$Z^+9*)Z)%$_ T02\2\#'#"F9J-!C M1(>I>@QHS2!-Z80.@B1: Y&4XT4)M"@1%,6DPA-(-(%<+HM"$Z@%LO08.2(K M"1< +)VH$@*Y)$I)F!$E14M*@Y(X8W@"C2;0RT6A!+<,62#+ !K3981KD@H] MT05# BC-F)@I:\;)%%DO<\Q0I]Y3N$$APSF;67@4MR,5-XB#&Y+*)>+(@++B5(N13P9M0J!0C&N86S>XR6GH M W2(-[$L(] M$I%&A(R)3E/%IM*$0/]9TC0E,T7A+H?0Y9S-\<(]">H&:7!/0KA3(M*DH:&H M_X($AD* D!(I",P4A;L<0I?[13ISU,,]RG9'0B+TU]Z)J7)MK:<^7:L^]H]-H@W4-[HI^,/_C&J6]S_J;I MNZY/67W(JR9ZML[W"]VI?F^M,[Y,\L87>/2-WO6A,'O7WBI_7_?=3O_@[&GH MY))K.[GY U!+ P04 " #C1'!0C0+0SN ! "C! &0 'AL+W=O)U,@YE7^. MP,2481]? \]=TVH;('DZT 9^@/XYG*19D56EZCCTJA,]DE!G^,D_%+'%.\!+ M!Y/:S)%UX #-P6XG)40JFW!>5H]*" M+RJF%$[?YK'KW3@M^E?:/B%8",%*\)/_$L*%$+X3(F=^KLQ9_40US5,I)B3G MGS50>R?\0V@.L[1!=W9NS[A5)GK)H_!C2BY6:,$<9TRPP?@K@ACU-46PE^(8 MW-&#?Q,4]X@DV<\0[IH('3_:FHB\?8%H5R!R N%&((P?]P7B78'XKH(P\6^. M\1X313>88@\3W!1"-O^6@VQ<&RA4BK'7]A0WT;73G@)[-V[B1].!<\.\R\SM M^YW*INL5.@MM;IZ['[40&DR)WH.IL34OQKI@4&L[_6#F:'%L#P)9'V7 M\K]02P,$% @ XT1P4$S$MQ@- P I P !D !X;"]W;W)K&ULE5?;CILP$/T5Q <4WPVK)%(W5=5*K;3:JNTSFS@)6L 4 MG&3[]S67102/*_(2L'/F<&:88YO55=>OS4DI$[P5>=FLPY,QU4,4-;N3*M+F M@ZY4:?\YZ+I(C1W6QZBI:I7NNZ BCPA"(BK2K PWJV[NJ=ZL]-GD6:F>ZJ Y M%T5:_WU4N;ZN0QR^3SQGQY-I)Z+-JDJ/ZHKX M,Y"&XS/;P.G]._OG+GF;S$O:J*W.?V=[!D/V MW]1%Y1;>*K'/V.F\Z7Z#W;DQNAA8K)0B?>NO6=E=KP/_>Q@<0(8 ,@9@]M\ M.@3064#4*^M2_92:=+.J]36H^[=5I6U3X =JB[EK)[O:=?_9;!L[>]DP1E?1 MI24:,(\]ADPPY!:Q=1%"C)#("AA5$% %Z>+I))[Z""A(0#L"=I,&FZ718WB' M*3N,)%(2)&?)N#@>TSA))"R(@8(8((C/!/48,7D0)8)P/A.^=7&$<283# OB MH"#N")+S G'G.0QA)OBL'[8NCM*8$>1Y8P+4(QP]5'H2DB"!7-XS,4@0+^B9 MV$D58Q''R?P5N;B$"R8\+9. >A) CR81X*>'W ]([*P([&D*6=RKA>%3$E>&XA "QJZI&?/T'(9MB,4=A8&-B.62PDBW902+!1?SR@! )!..J$<4;&X,N3OV M4,!^Q,GRTA#8D 0M*,T NLG8KN[<660 8,*P()XW3F"'$]?A5'KZCGBVZSOV M:P(;DBS9L0?0-.&8)HS/EQD QQE#,?)(@@U.((-[5BH"&Y+P.PH#&Y*X&R-0 M&.&<42@2&*%Y85RROM?=V?F_N!T=7P31"-'R:;?U!+ P04 " #C1'!077!\ M@.(! !H! &0 'AL+W=OV>4JQRU6O<[C%79 B/J0?3 S4DM)"/:F++!JI= *D=B%(>^GV)& M.HZ*S/F.LLC$6=..PU%ZZLP8D7_W0,60HP!='2]=TVKKP$76DP9^@O[5'Z6Q M\*Q2=0RXZ@3W)-0Y>@IVA]CB'>!W!X-:[#U;R4F(5VM\JW+DVX2 0JFM C'+ M!0Y J14R:;Q-FF@.:8G+_57]V=5N:CD1!0=!_W25;G.T05X%-3E3_2*&KS#5 MDR!O*OX[7( :N,W$Q"@%5>[KE6>E!9M43"J,O(]KQ]TZC"?IE;9.""=".!." M]+^$:")$'P3733QFYDK]0C0I,BD&3XZ7U1/[)H)=9)I96J?KG3LSU2KCO11Q MXF?X8H4FS'[$A M,,".P49]#A&LA]N$=/?P>5R>0GO!-_Z]&:/QU7_(C#/X@\BFX\H["6V>C[OD6@@-)DO_P238 MFK&?#0JUMMM'LY?CXQ\-+?IIKO'\ " M "*"P &0 'AL+W=O)_@%LSCT^]\*Q[^IJ MZ^?F9(R+7HJ\;-;QR;GJ+DF:WM\%%7E" M$!))H;,RWJRZN8=ZL[)GEV>E>:BCYEP4NOY[;W)[7<# MK_MUC%I%)C<[UU)H?[N8K#M\RO[YRYYG\R3;LS6YK^S MO3NM8Q5'>W/0Y]P]VNL7,R3$XVC(_INYF-S#6R5^C9W-F^X:[]\]DV?O:R89RLDDM+-&#N>PRYP4P0VQ AQ A)O(!1!0%5 MD"Z>WL33%,$$%"2@'0%[DP:=I-%C>(Y%<"H7%))D0QR4C0LYDQ$!!#!#$ M)H)ZC+A9B$@N*)\*"G$XI4KPF0IQ4! /!,G).O<\6(6D0$%F"#"" MO8R6EP3/; =X05$&T)MTB5)(!-M"",3^_Y9TYD-C>'? !!#%9RC@_0'3=Y0& M=C2&+!V4)O0J2PE#:EH9 ,>EG-LU,>QI')J:\3D*V(98O*,PL!&Q7%(8"3@) M(Z:FFPL )"F31,QY 38WAMPM9RA@0^)T>6D([$B"%I1F +W)6"C&TTEE0!Q. M\4QA".QP$CJ?[JZX+.ECKC.=$'SS;R3?&XR W!]<^^CXNJOONL!\X6PV= M;S*VWYM_4$L#!!0 ( .-$<% IW48H^P$ /$$ 9 >&PO=V]R:W-H M965T8%>\;GG#EC;*<#%R^R 5#.*Z.=S-Q&J?Z D"P:8$3> M\1XZO5)QP8C2H:B1[ 60TI(818'GQ8B1MG/SU.;.(D_Y5=&V@[-PY)4Q(OX< M@?(A OX MV<(@%W/'='+A_,4$7\K,]8PAH% HHT#T<(,34&J$M(W?DZ8[ES3$Y?Q-_9/M M7?=R(1).G/YJ2]5D;N(Z)53D2M4S'S[#U ]VG:GYKW #JN'&B:Y1<"KMURFN M4G$VJ6@KC+R.8]O9<1A7,)YH^X1@(@0SP8\_)(03(7PG1+;YT9EM]8DHDJ>" M#XX8?U9/S)GP#Z'>S,(D[=[9-=VMU-E;'N$D13RLT6Y:V,H,5)82!J>ZFD M4_!KI\P_663G>_L8F).VRA_U?1ZOW[O,^!A\(Z)N.^EPHBUQ<-6\Z.,I 7=N6R7\'X&+8ASB\!UZ;2ZUM !5YSR[P"_3O M_BC-"LTN9=-"IQK1!1*J??@%[PZ9U3O!GP8&M9@'MI.3$&]V\;W3DS!L^!_FU+7^S +@Q(J=N7Z M50S?8.HG"8.I^1]P V[DMA+#. NNW#,X7Y46[>1B2FG9QS@VG1N'R?^>YD\@ M4P*9$\C8RPARE7]EFA6Y%$,@Q[WOF?W$>$?,WIQMT&V%>V>*5R9Z*V(:Y>AF MC2;-8=20I0;368.,_PPA7@AQ!IN% =YF?H.-UV#C#.)/5>)5E:,F<9K.:=(M MC2EZ51P$MH<-GIF75NI 5)4COI ?1/XO)(#HV!)R<]^$CV!T* MC3> 7QV9Q&H>:"='QE[TXNMI'\9:$*&DD9H!J^%&#H123:1D_)DYPZ6D3ES/ MW]@_&^_*RQ$+2[3XLPN!$SOA*Y3.;OI#93Q8&L_EOY$:H@FLEJD;# MJ#"_07,5DO4SBY+2XU<[=H,9)_LE@W.:/P'."7!) .B_"B@V3OS3;D5*GJK4I27T4T3S9C:8N * Q9$ MI-B7$M!7HH9..KPO<' 1"/DK)%X3BR."XO]2@JO MDL*C9'.XZ\(]-VF,,K"]!![$7TP7%$'#KH/4EV@571KMHVD^ MFWBM&K#ME^\TMGM_Q_S2#2(X,JD:CVD/9\8D43+C!Z6P50_&LJ#D+/4T5W-N MVZ9=2#;.+T*T/$O5/U!+ P04 " #C1'!05;O]H=X! !B! &0 'AL M+W=O(]1"14=F'X6XU>8ZMEB-!7_'2[ #-QF8F(4 M@BGW1<6@M."3BDF%TS>_MIU;1W^RC2;:.B&<".%,V.S^2X@F0O1!<-TD/C-7 MZB/5-$ND&)'TE]53^R8VA\@TL[!.USMW9JI5QGO)XOLH(1&=!^4AM%=[Y3^: ?+O M_4/&3]\/*NNV4^@LM'DX[GHK(328!(,[DUMC!GXV&%3:;N_-7OIG[PTM^FFB MR?Q;R?X!4$L#!!0 ( .-$<%"K,L!G*@( !P& 9 >&PO=V]R:W-H M965THX#E(.2+JAG3T6O+.[6+:ZW[;9*H4\U: MJAY$SSJS?^49I1,KNQ:D%8IR=M'6@IKFS ^/<&AF,WY-G/*>T M@A<7<71F%WKC^DD,7]A4#XZCJ?AO[,ZXD5L2 MD^,DN'+/Z'136K23BT%IZ>O8-IUKAW$%DRDL' "G #@'@.R_ 6@*0%Y ,I*Y M4C]13:M2BB&2X\?JJ=T38(O,RSS92??NW)JI5IG9>Y7EN$SNUFC2[$<-7&C@ M>\5AK2!DEB0&8*: 00KHXM$R0XK"!BAH@)Q!]JX,XI4Q:K#3=$X#$$8% :E7 MS5JX09M-2O(P418DR@)$N46TZ%1V%-D?>':F+\<+:QQHT4]W<3+_$*J_4$L#!!0 ( .-$<% * MTA_GS ( '<+ 9 >&PO=V]R:W-H965TSJC?0 M8E;1$_O.U(]J*_0*=2R'K&"ES'CI"':^].'4P=[U:$NXGK'-B17G+UPF^?61M0Z#IM]%_9E>4:7BO1/O8\E^;?V5^DXD7+HJ44 M]*UY9J5YWIHO,6G-8 /2&I#.H$G.J('?&OA3#8+6(+ ,4!.*R9!X0Q=K (.C(69SC_&3$!;B@['ZAB 8"!F)) ) D/@#P@(3!""!"&@ MP+=2T6!"@RD-)@F]^@<[BD!'$> HL(X5PH26F F8#82)8+$Q*#8&"&)+2'R7 M%>L*;1XA!B(24$0"B$BLC#68M.<"/Q$[91^ !E)24$H*2+%KLL%$/2_6\:X? M(08BL =W!N]>1CJ24CS27/#T@L%@\UAB\G')K%I0_^R#1S6#X?Z H09A5PT$ M2K&5^RF@#0@:RP[0@9"H$;&P8Z6^J/4, M"T?_<5G@1H*! M3I+>'2 $&JE/#/<*##2+-++]0*!XQ _<"##0"=($IB!P%1-O>E8)7,4$3\@J M"$HM/Z@WE11,G,S$)YT]OY1FW.SM=E/ET@Q:Z!^\&4F_47'*2NGLN-*SD9E@ MCIPKIK5X3_HRGO44W"UR=E3U:ZS?13,*-@O%JW;,1=VLO?@+4$L#!!0 ( M .-$<%":^O'J# ( -P% 9 >&PO=V]R:W-H965T%#F_*-9TL!>>O+0M%;]WP/BP]4/_P_'2G&ME M'*C(>WJ&[Z!^]'NA+32SG)H6.MGPSA-0;?VG<%-F!F\!KPT,\F;OF4H.G+\9 MX\MIZP=&$# X*L- ]7*%$A@S1%K&KXG3GU.:P-O]!_LG6[NNY4 EE)S];$ZJ MWOJ9[YV@HA>F7OCP&:9Z8M^;BO\*5V :;I3H'$?.I/UZQXM4O)U8M)26OH]K MT]EU&$]B,H6Y _ 4@.> ,/IG )D"R"( C%D]-?]$N"&Z MF4?CM+VS9[I:J;W7(@Z"'%T-T839C1A\@\'WB'*-2)(9@K2 605VJL VGMRI M"-T$Q$E +$%T1[ 0N1LQL<5T%A,E&.-D4P<@T+,QR2;-EV=//.S-S[1L6YZ:1WX$H_6?NP*LX5 M:,[@0=/5>M3.!H-*F6VJ]V(<.*.A>#_-4C0/].(/4$L#!!0 ( .-$<%#& MQ"$R_P$ +T% 9 >&PO=V]R:W-H965T_4+JRU[K<(J:J&EJD'T4-G=LY"MDR;4%Z0ZB6PDTMJ M.2(84]2RI@O+PJT=9%F(J^9-!P<9J&O;,OEW#UP,NW 3?BP\-Y=:VP54%CV[ MP"_0O_N#-!&:74Y-"YUJ1!=(.._"+YOM/K=Z)WAI8%"+>6 [.0KQ:H/OIUV( M;4' H=+6@9GA!H_ N34R9;Q-GN&,M(G+^8?[D^O=]')D"AX%_].<=+T+LS X MP9E=N7X6PS>8^DG"8&K^!]R &[FMQ# JP97[#:JKTJ*=7$PI+7L?QZ9SXS#N MQ,F4YD\@4P*9$\C8RPARE7]EFI6%%$,@Q[/OF?W$FRTQ9U/917<4;L\4K\SJ MK4QP5J";-9HT^U%#%IIX0V<-,OXSA'@AQ!E$"P."_V,0>0TB9Q O*Z";596C M)G&:;M)$F"1^3NSEQ!X.67%UP(HRS-/)S$B\G\7"B%2>YX\0DI[D?0[T8 MZL'$*PR]PV _(O4B4@\B62'2SR(R+R+S(.@*D7T6D7L1^1TBP?D*D=_]OS), M,YJN.&AQ\^S#]I/)2].IX"BTN<3NJIV%T& L\8-QJ\U;.@<[_ =02P,$% @ XT1P4.&HLL/@ 0 : 0 !D !X;"]W M;W)K&UL?519;MLP$+V*P .$6FB[-60!L8N@!5K M2-'VFY9&"\)%(2DKO7VY*(KB"/T1.M(M@(E>.!/Z@%IC^CW& MNFR!4WTG>Q#VI):*4V--U6#=*Z"5)W&&TSC>8DX[@8K<^\ZJR.5@6"?@K"(] M<$[5WR,P.1Y0@EX=CUW3&N? 1=[3!GZ"^=6?E;7PK%)U'(3NI(@4U =TG^Q/ MQ.$]X'<'HU[L(U?)1)XTT1S2$9?[ M5_4'7[NMY4(UG"3[TU6F/:!/**J@I@,SCW+\"E,]&Q1-Q7^'*S +=YG8&*5D MVG^C^3-;K;;>:[%)XAQ?G="$.09,NL D,P); M]3E$NA;BF'Z@I^\#G#XBMMOU"-EJ$9GG9\L(\>=U ;(J0+P >=>%Y*8+ ;/Q M&!&ZL",[0FYJ68&EA&2W'<.+"^*@&O^6=53*01C7BH5W'I?[U%WPC?]HQRB\ M^C>9,(,_J&HZH:.+-/;Y^$NNI31@LXSO;(*M'?O98% ;M]W9O0J//QA&]M-< MX_GG4OP#4$L#!!0 ( .-$<%!F/R8G/@( )8& 9 >&PO=V]R:W-H M965T<_$F2\94\-[4K5R'I5+=Z%;T>1RJAK6RHJW@6#G=?@) M/.]2H[>"UXKU"\?G?_;'/7N1RH9%M>_ZI.JER'JS XL3.]UNJ%]U_8F \)@S'Y;^S&:BTW M)'J,(Z^E_0;'JU2\&5TT2D/?A[)J;=F/_O!^(874[:C81>,9Z]H^FTTZV_:>G1^K>6T$ S*.;,1HU MFT$#9QI'L5TJDN11LEM*"$"3)M*0$RGTDD)K@.84,](' ^0U0-8 /Q!@)]5! M0ZRFM9H4XSA+B)/P4H>RF(!5Z@?"7B#L 7(&V@R:9#800$F*<.P >70@PQ!] M $2\0,0#Y*SCABP&(B2#R-T12YGFAK,5'W8%68=@RQ%Q)F@[5*8P S&F7MTHMF! M-S?V=RHN52N# U?Z[K G_,RY8MHS?M)VI7XDID;-SLI44UT7PU4Y-!3OQE<@ MFIZBXB]02P,$% @ XT1P4*S0P9OO 0 AP4 !D !X;"]W;W)K&ULC93;CILP$(9?!?$ :X[.;@1(3:JJE5HIVJK;:P>& M@-;&U';"]NWK XL(0=W<8(_]SS_? '8V @/'EFC(B_ M.Z!\R/W0?U]X;D^-,@NHR'IR@I^@?O4'H2,TN50M@TZVO/,$U+G_*=SNL=%; MP4L+@YS-/=/)D?-7$WRKZ#4&&F,/Z.G/Y4TB?/YN_L7 MV[ONY4@D[#G]W5:JR?U'WZN@)F>JGOGP%<9^4M\;F_\.%Z!:;DATC9)3:9]> M>9:*L]%%HS#RYL:VL^/@=A(\IJTG1&-"-"6$R7\3XC$A7B0@1V9;_4P4*3+! M!T^XC]43\T^$VUB_S-(LVG=G]W2W4J]>BC1\S-#%&(V:G=-$,TUTK=C?*C"> M)$@#3!31*D5D\^-YA3!=-XA7#6)KD,P,P@ OVG :;#6=*[+!890^;1;=W"&\ M0DI6D9(5I$6E77(OTAW"*Z1T%2F]04K#IP62TZ2+2O&"YR/5%0Q>A<&W,%&P M@,%WP7RD_(E3Y=]@S4G"O0CL&#-FOTK3@%%&IEIAL] M%^YN<('B_7CMH>GN+?X!4$L#!!0 ( .-$<%!W02-._P$ (@% 9 M>&PO=V]R:W-H965T*)=="J-R7C%$MUY!42'0=<&!(E*/"\!%'O@9>FJJ4.H"SM< 7?0?[H3ER=T*Q2-!1:T;#6X5#N MW6=_=]QJO &\-C"(Q=[1E9P9>].'+\7>]71"0""76@&KY0)'($0+J31^39KN M;*F)R_U5_9.I7=5RQ@*.C/QL"EGOW:WK%%#BGL@7-GR&J9[8=:;BO\(%B(+K M3)1'SH@P3R?OA61T4E&I4/P^KDUKUF'2O]+LA& B!#/!3_Y)""=">"-$IO@Q M,U/J1RQQEG(V.'S\6!W6_X2_"U4S2L;Z7^51;1>9P\!_H"K.('-6;&J7"3&6?4-\RKIA7. MF4EUO[T? @ D 4 !D !X;"]W;W)K&UL?53MCILP$'P5Q ,<8(-)3@3IDJIJI5:*KFK[VR&;@,Y@:COA^O;U M!^$(L?H'V^O9V1EC;S%P\29K !6\MZR3F[!6JG^.(EG5T%+YQ'OH],Z)BY8J MO13G2/8"Z-$FM2Q"<4RBEC9=6!8VMA=EP2^*-1WL12 O;4O%WRTP/FS")+P% M7IMSK4P@*HN>GN$'J)_]7NA5-+$29ZP/LS)!>W9V3[N5.GHM,[0JHJLA&C%;AT$S3#(A(LT^E4"^$EOTD([N M"^P>$83X*V"O"6SS\;P"2OT$J9<@M03IW2FL%Z?@,)G%=.X4,IQG.4X6;CS M.(Y7<8+]DC*OI.Q1$HX7DAR&W$G*4[+.%XH\N#3':(W\@HA7$'D0E*"%]2UY MM$[669PNK]3. TS258+C;"$IFEWD%L39OGD95/S2*7-E9M&IK;P@\Q 6\:UN M-ZX[?-"X7O6=BG/3R># E7YF]C&<.%>@=<9/6F*MV^.T8'!29IKKN7!-PBT4 M[\?^%TU-N/P'4$L#!!0 ( .-$<%"@8[ )V0$ -0$ 9 >&PO=V]R M:W-H965TJT M]3>QCV.K8%P@8TWY 5>%R.UD5XJA9/\!.1NK( M.95_'X")J40)>D\\]8=.VP2NBI$>X!?HW^-.F@@O*DW/85"]&"();8F^)NMM M;O$.\*>'29W-(]O)7H@7&SPV)8IM0<"@UE:!FN$$&V#,"IDR7KTF6BPM\7S^ MKO[-]6YZV5,%&\&>^T9W);I'40,M/3+])*;OX/O)4>2;_P$G8 9N*S$>M6#* MO:/ZJ+3@7L64PNG;//:#&Z=Y944\+4Q(/2%=",GGA,P3LO\E$$\@5P0\M^+V M9DLUK0HIIDC.7W>D]A E:V)VO[9)M]ENS6R/,ME3E6=)@4]6R&,>9DQZ@4DO M,9M;S&IU"=G>0CY$L"ERJ30-5IHZ>G9.3TE8( L*9$Z 7+217;4Z8W*'&1PF MB>T3]B%!'Q+P(5=[06Y\[HEQRL(^>= G#_CD5Y\EO_%)0_W@L^-B__>?5![Z M045[HC%4*#D8SOC%IGKI@E8-!J._UBYG+^T>9 B]'?(7BYR*I_4$L# M!!0 ( .-$<%"+!:JZP ( '() 9 >&PO=V]R:W-H965T7*5ZZ8Y"Z.2UJ=MNF1ZU/MUG6;<]BH9W=_(D6O-E M+U7#M>FJ0]:=E. [9]34&0* 90VOVG2U<&./:K609UU7K7A427=N&J[^K44M MK\L4IF\#3]7AJ.U MEJ<^$'\%/K7Z5&97C9ZV56-:+M*MHD2^V7Z .\W$%L# MI_A=B6LW:2]K_X65@UG< T&:#2 [$,#/!C@=P/BDN_) M7*J?N>:KA9+71/6K=>)V4\![;"9S:P?=W+EO)MO.C%Y6%+-%=K&.!LVZUZ") M!HZ*S'@?0Z!8B#4*S-%M@$VH8"P> 4>3P,X>3R,@$G= H@Z(E!\*" ME#&E)2V!!Q/J$($0Y#.+E4>!\A"(>('6O89-@2 AWL;>A"I88,)FIJ>(TA01 M&G_K%&$<2%GNS>(FE($X21DE*2,DWI^V+H,0A)8E\4!"50')W")!$#]80 0' M^R<+"")]0D7.@+]2$>',W,"900]/?/(+KY@TM*,0UF*"(TZPIR[$%EDTK5 M"'5P1;U+MO+<:EL3)J/CQ>$!V4KGC:_MA<)5P''JNV29ZE-'775 M;B^E%H83W!G"H[D C9U:[+5MYJ:M^EM W]'R--QPLO&:M?H/4$L#!!0 ( M .-$<%"XG<+9H@( *$( 9 >&PO=V]R:W-H965T\QR#.9Z=A'Q5>\YU\M8VG9JG>ZW[ARQ3ZSUOF;H7/>_,/ULA6Z;- M4.XRU4O.-BZH;3($ ,U:5G?I8N;FGN1B)@ZZJ3O^)!-U:%LF_RYY(T[S%*;G MB>=ZM]=V(EO,>K;C/[C^V3]),\HFETW=\D[5HDLDW\[31_BP@L@&.,6OFI_4 MQ7UB2WD1XM4.OF[F*;!$O.%K;2V8N1SYBC>-=3(F^$HTO^N-WL_3,DTV?,L.C7X6IR]\+(BDR5C]-W[DC9%;$I-C+1KE?I/U M06G1CBX&I65OP[7NW/4T^I_#X@%H#$!3 *3_#B*[,*:IN;/ R"E2&VX^@N$$5 M-:@^L/VJ@+2JRL);A%6HNJ.D!#?*@2!^)H /[+Y1=)6J*!'U7X>8#H$H1>S4Y]]=&W6FU_:_NL:QKO-T+R_,[FK M.Y6\"&W:CFL.6R$T-YS@WA#NS??"-&CX5MO;PMS+H6D. RWZ\8,@F[Y*%O\ M4$L#!!0 ( .-$<%!#O?!$\ ( %0+ 9 >&PO=V]R:W-H965TP(!72:0F5=5*K;3:JNTUFY#$6MND M-DFV;U_\LU8"X][$0,X,WQ@X9G$US6M[U-I&;U59M\OX:.WI,4G:[5%7JGTP M)UV[?_:FJ91UW>:0M*=&JUT?5)4)25.>5*JHX]6B'WMJ5@MSMF51ZZ0K!8G== _M/UY>FI<+YFR[(I*UVUAZJC1^V7\ M$1XW(+J 7O&KT-?VIAUUI;P8\]IUONZ6<=H1Z5)O;9="N<=%;W19=IDMM^S?^Z+=\6\J%9O3/F[V-GC,I9QM--[=2[ML[E^T6-!61R-U7_3 M%UTZ>4?BYMB:LNU_H^VYM:8:LSB42KT-SZ+NG]0#&1]J9^45:M%8ZY1,ZS6276; AZI>YG;;K!_=_U_KMK6C5Y66<86R:5+ M-&K6@X;<:,B]8A,J.)\DB0.8* A*0?IX>D>1X0DHFH#V"=A= NZ5,6BR7E/W M&@JIH%XIH0HXX"@,16$(BO!0!@V_0V'$4VU"%0A&9F R%"9#8*0'DP73$/ 7 M.-3D3,ZL$$=).$*2>R0\G$60S$,)193E0N(L F41(0M//1813.,I-J%"0C:S M[27*(1$.\#AD, LGTE^>4)3B'#G*D2,#NZ^7O%D1'W'819 9IQB4!00IL$L*IN,QR\)%"'>52,#J#A%LF M()[)9TXDX*8)B&MRWS5'T=TVYVF6!Y\ 1$>8)',O&C=/0-S3WV1K0(R1"/"= M'),Q8#,G%' #!<1!N>^@$-JC;Q:(1'*:S[#@%@J(AW+?0R'T1RDH#0\&HF." MIV(&"7=20*Q4^%8ZBFZ_J1]XR@0PGPD1,B'ES5$;H)*;ZTUWW_RNFD-1M]&+ ML>ZFU-]G]L98[9*F#R[=T5UQITZI][9K"M=NAGO>T+'F--YAD^DBO?H'4$L# M!!0 ( .-$<%#0[;^G]P$ %\% 9 >&PO=V]R:W-H965T#P7YGZKU+!'2)8M,"(?^ "]WJFY8$3I MI6B0' 20RI(813@($L1(U_M%9F,G461\5+3KX20\.3)&Q-\#4#[E_L[_"+QV M3:M, !790!KX >KGJ>3, M^9M9?*UR/S ) 852&06BAPL<@5(CI-/XLVCZJZ4A;N^?0%EGIBWUN*_P87H!IN,M$>):?2?KURE(JS146GPLC[ M/':]':=Y)\$+S4W "P&OA%WR7T*X$,(K(;+%SYG94I^)(D4F^.2)^<\:B+D3 MNWVH#[,T07MV=D]7*W7T4L3I+D,7([1@#C,&;S!7!-+JJP5V61SP'1U_-CC> M(^(4NRU"9Q6A%0BW%CAU"T1.@<@*1)\R"&^.P86)W":QTR1V",0W)BY,XC9) MG":)0R"].>\9$UM,/V,"^W,;I4ZCU&'T>&.4WAGAP.F$-O>5@6CLTY9>R MMI5-=.T>3_9%H2M\;CW?B6BZ7GIGKO2KL7>[YER!SB=XT*FTNMNM"PJU,M-4 MS\7\YN>%XL/2SM#:4XM_4$L#!!0 ( .-$<%#/ *YVWP$ )D$ 9 M>&PO=V]R:W-H965T$1-W!0,03FV!4)RWC Y'*Y%A7A?&=>56PFZ3] M"&?NB=LP$/[G!)3-I8_]=\=+?^VD=J"JF,@5OH/\,9VYLM#*TO0#C*)GH\>A M+?T/^'A*-=X ?O8PB\W>TY5<&'O5QI>F] .=$%"HI68@:KG#,U"JB50:OQ=. M?Y74@=O]._LG4[NJY4($/#/ZJV]D5_H'WVN@)3 T-9BA4SF'XDD M5<'9['';^XGH7XR/H>I-K9VF%>9,)2^4]UXE65Z@NR9:,">+"3>8&*YVZAU"F4.EIWV FECZW#49HF M^]:AS53I2_N-\&L_"N_"I!I0,T8M8Q(49_"DZ#KU3JP&A5;JK9IKC]O;8@W) MIN4A0.MK5/T%4$L#!!0 ( .-$<%#AU8S)(@( .0% 9 >&PO=V]R M:W-H965TS_S?S 1/.7+Q(AL %;QVK)?;L%%J>$1( MU@UT5#[P 7I]<^:BHTH?Q07)00 ]V:".(1Q%&>IHVX=5:6T'497\JEC;PT$$ M\MIU5/S> >/C-HS#-\-S>VF4,:"J'.@%OH'Z/AR$/J%9Y=1VT,N6]X& \S9\ MBA_WA?&W#C]:&.5B'YA*CIR_F,/GTS:,3$+ H%9&@>KE!GM@S CI-'Y-FN&, M-('+_9OZ1UN[KN5()>PY^]F>5+,-BS XP9E>F7KFXR>8ZDG#8"K^"]R :7>3 MB6;4G$G[&]17J7@WJ>A4.OKJUK:WZ^ANR&8*\P?@*0#/ 7'VWP R!9#W@,06 M[S*SI7Z@BE:EX&,@W)\U4/--Q(]$-[,V1ML[>Z>KE=IZJ]("E^AFA":?G?/! M"Y]X]D!:?49@'V*'[\)7@/V]1Y;Y"<1;!+'Q9$D@D5\@\0HD5B#YJPMDU07G MDUJ?WG4!Q]$FV_A!J1>4>D#)"N1\L@4HV> \_T?/,R\G\W#2%2>[X\1ICE/B MY^1>3N[A9"M.[FD<27&6^$&%%U1X0/GJ,RH\H&B#HV(%0HO'T8&XV#DB@YI? M>V4^PX5U'E5/V#RNE7VG1YB;..\R;OY]I>+2]C(X?&C5N(S6WK<;QEQ1@Q;NQK30X$EEK!8>0WM@KK4@RDC2BO$D^<&TD W- MTYC;V3PU)Z]D SM+W$EK83^WH$R7T06]))[EH?8AP?*T%0=X ?_:[BQ&;%0I MI8;&2=,0"U5&?RTVVU7 1\ _"9V;[$GH9&_,,01_RXPFH2!04/B@(' YPSTH M%82PC/=!DXZ6@3C=7]3_Q-ZQE[UP<&_4FRQ]G=$U)254XJ3\L^D>8.CGEI*A M^4&UL=95AKYL@%(;_BO'[KH""V%B3]2[+EFQ)=8H+Q+]:IKSDWTUHI.;^/:F'Z3)/I8\Y;I M)]GSSKXY2]4R8Z?JDNA><7;R0:U($ D:5G3Q57IU_:J*N75B*;C>Q7I:]LR M]7?'A;QO8QB_+[PTE]JXA:0J>W;A/[CYV>^5G263RZEI>:<;V46*G[?Q1[C9 M01_@%;\:?M>S<>1*.4CYZB9?3]L8N(RXX$?C+)A]W/@S%\(YV3S^C*;QQ'2! M\_&[^V=?O"WFP#1_EN)WP< : ] 4@(9:!I#/_!,SK"J5 MO$=J:'[/W#>&&V1[V]5;A8NT3&[.:-3L!@V::3)()DUB_2<( M"D*0-TAG!B@%88,T:)!Z@VR> 8&++ <-]IK.:R @ ,$T#,J"H"P 0@O0H"'_ M@:B5H3 (!T$X %KV'0= $.*4AD$D""(!4+8 D16H +0 ,,S)@YP\P,$+3K[B M8 HR^H!#@QP:X) %AP8:E^> /OC3%D%0L0+A8MFX8EU0CA#-'E0$07@/@@!J MV;M1-&=]P)3 XA'KP7Z'Z_Y!NF3!U5[","4$+S=M,CMFW#'^G:E+T^GH((T] ML?RY#4DT_U4_0-02P,$% M @ XT1P4 TNVRP. @ S@4 !D !X;"]W;W)K&UL;91AKYL@%(;_BO$'7!0%M;$FZUV6+=F2YB[;/M/VM)J+XH#6NW\_0&N, M\J5P\#WOI%]-"9+UV9?+? ;@8]F$FENM M[0*JRI[=X"?H7_U1F@C-+I>FA4XUH@LD7/?AIWAW**S>"7XW,*C%/+"=G(1X MM\&WRSZ,;$' X:RM S/# UZ!88STB8NYT_W+ZYWT\N)*7@5_$]S MT?4^S,/@ E=VY_I-#%]AZH>$P=3\=W@ -W);B6&^9_8OC'39[<[:+;BO< M-U.\,JN/BA2T1 ]K-&D.HP8O-$E.9@TR_C,$>R'8&20+ YQ$?H/$:Y X@W1A M0*-5D:.$.$GG)#DMT@+[,:D7DVXP*8U7G%%#%YPLH3$M_!SBY1 /!Z\X9,.A M-",D]G.HET,]G&3%H5M.%),B\7,R+R?S<-(5)]MP",Y3G/DYN9>3>SCKPYIO M.'&2X23/_:#""RHV(%)D*U"Q.7!IEA&*UP<;+:ZB?>E^,'EK.A6KMM/,S.7XQ(R!%OWT>J+Y":_^ U!+ P04 " #C M1'!03L!,]) " 7"@ &0 'AL+W=O[K1NKZ-(K7:\9NI*M+PQ;S9"UDR;H=Q& MJI6Y"+F=CKJFSX@PS4OJZ9_'/#*W&F'EF MBB]%]:MZ5% M[55,*C5[[=JR<>W1Z[_18 +V!'PBH.2_!.()9"HA\81D*B'UA'0J@7H"G4K( M/"%[1XBZU76?ZY9IMIA)<0QDM^-:9C8?RJ169'3LF!P M6;"C)[T0"2Q 0 'B!$A/((4%$E @ 3*@[Q:BPZ0.TSA,GN$DA\.D8)@4")/! M A04H-.-9J! =MGH;38P2BC!I(#CY&"<'(@SLE0%*%!,=XIBN-CB"5X]J&>6 MX*P8R16-U#4:A"(I&9& :P#A#QB&JP"1RX:7'G1NF)(\34<*%L'U@J""&=D@ M"*X%E'[ ,%P-B ZS0/'[?QP=&$X*6N1CAN&Z04#A(#0B 9<$RC]@&"X*5%PV M?.-!YX81SB@>_+0OXKJ4HK/3S5Z9OC.Y+1L5/ MM#DIWG&V$T-QHQE=&;6=N M::=!Q3?:=C/3E]U5I1MHT?IK6'2Z"R[^ E!+ P04 " #C1'!0H6:32S,$ M !)%0 &0 'AL+W=O9MUZR?X^98 MNWPS.)5%3$EBXC+?'Z+E?/CV6"_GU4M;[ _NL9XU+V69U__=NZ(Z+2(1_?SP M=?^\:_L/\7)^S)_=-]?^=7RLNU9\CK+9E^[0[*O#K';;1?2+N/NB=.\P6/R] M=Z?FXGW6I_)45=_[QN^;193T/7*%6[=]B+Q[O+J5*XH^4M>/?Z>@T1FS=[Q\ M_QG]UR'Y+IFGO'&KJOAGOVEWB\A&LXW;YB]%^[4Z_>:FA'0TF[+_P[VZHC/O M>])AK*NB&7YGZY>FK5,O\Q/O>'X7D:_TG%Y(8=:'*@LX-0;SK(R4'> MZJ F!W6K@YXG63VNAV/>+SMQI[OI6O:;.Y'&[JPT5EV;;/B-EZ4!VYAS+7)%P DY-DF[A(Y9T,P M&QH"R*ML @$D#""' .HB0)IZF8XF>C YC)FJQ&A_U!Z G21*K?62YG;":F,4 MX7XKV&\%$E<_X:$C\050)C44$#J!)8 D3$HI1F!,P:58!3",D% )LB? M)>(R$4+!"D% ((MB2:L$ 04@I0/Q17B MDR"37DCQ-196" (*0?YB(*X0GU(K5$","$L$<8DPY*LY@7+^EO 1U@A"!3TT MWYC[](&23IC4A$CM[X<(D)K2RU5\#85)39S4K%2NZ&922TQJB6H_V]G>3&J) M22U1V?=4]WXRTN%AFWK#R?_6\$I,?HFV!_[A17+VAQ(/'!LX\5D174E._! * MIKSDE&?U2X!S_VRN9)\+Z 3&1 4B=5 \IT M*YHKR7<"I+.0=$DL&A*)!IL>&PO=V]R:W-H965T9 .@@E=&.[D.&Z7Z%4*R;H 1^&I/C3(!5)4].<$W M4-_[G= K-*D<6@:=;'D7"#BNP\=XM8TC0["(YQ8&.9L'II0]YR]F\?FP#B.3 M$5"HE9$@>KC %B@U2CJ/GTXTG#P-<3Y_4_]HB]?%[(F$+:<_VH-JUN$B# YP M)&>JGOCP"5Q!61BXZK_ !:B&FTRT1\VIM+]!?9:*,Z>B4V'D=1S;SH[#N).E MCN8G)(Z03(0X_RL!.P)^)U@'-&9F2_U %*E*P8= C%^K)^92Q"NL#[,V07MV M=D]7*W7T4N7)LD07(^0PFQ&3S##QA$!:?;)(?!:;Y(:>_&FPO47DN=\!>XO MEI_.^?&=%%.O0&H%\$P +R._0.85R&XSP-'5,=YBLB+UF^1>D]Q3YAV!PBM0 M_'^9"Z_ XM]E;F\Q>%GX399>DZ7')+XR&3&9Q73N*' 1W?GHNL]X[W[D<;J^ MFPXTMTIQA*^/#' -QLKU)!C4_=\I<[5ETZG^/B7FP5_&-Z8OV(;_+C$WU M*Q&GMI/!GBO=#NRC/7*N0&<9/>C\&MW'IP6%HS+30L_%V,S&A>*]:]1H^K>H M?@-02P,$% @ XT1P4&X$G!@P @ 208 !D !X;"]W;W)K&ULC55M;YLP$/XKB!]0;-X"$4%JF*9-VJ2HT[K/#KD$5!LS MVPG=OY]M**6)N^Y+[#O?\SQW9WPI!BZ>9 .@O&=&.[GQ&Z7Z=1#(N@%&Y!WO MH=,G1RX84=H4IT#V LC!@A@-0H32@)&V\\O"^G:B+/A9T;:#G?#DF3$B_FR! M\F'C8__%\=">&F4<05GTY 0_0/WL=T);P_QNL+( &S$ M8PN#7.P]4\J>\R=C?#UL?&0R @JU,A1$+Q>H@%+#I//X/9'ZLZ8!+O^=X C.5/UP(X -7A)A.M47,J[:]7 MGZ7B;&+1J3#R/*YM9]=A/$G#">8&A!,@G $X_2<@F@#1*R"VQ8^9V5(_$47* M0O#!$^-M]<1\%'@=Z6;6QFE[9\]TM5)[+V4:145P,413S':,"1(X(-/LL M$;HDMN$-/'PK4-U&I*E;(7(6$5E\O,3C=U*,G02Q)8B6!"AQ$R1.@N0F XSR MJS:.,8F-Z<:8""5HA;-WI%*G5'HK%5[?6.J0RC.,%E?[1FGE5%HYVAJ["3(G M0?;_;.\R6@CQM;34%+M2S.4([S*ZU@\0 9 MB).=5=*K^;E3YE-?>.=Y>&]'Q)5_:^:D?=BO-..0_4[$J>VDM^=*CP?[B(^< M*]!YHCN=8:/G^FQ0."JS7>F]&(?;:"C>3X,[F/\]RK]02P,$% @ XT1P M4-L&_7H5 @ 7@8 !D !X;"]W;W)K&ULC57; MCILP$/T5Q >LN>WSF MS)F9>)+VC+^*&D Z;Y2T(G-K*;L]0J*H@6+QQ#IHU4W%.,52'?D%B8X#+HT3 M)2CPO 11W+1NGAK;B>FTLMM0'E:89^\O='W],.!O'20"_N]HY.Y[]_9OYCD53)G+.#(R.^FE'7F;EVG MA I?B7QF_5<8$XI=9\S^.]R *+A6HF(4C CS[117(1D=6904BM^&M6G-V@\W M\6YTLSL$HT,P.03^0X=P= @7#FA09E+]C"7.4\YZAP_=ZK#^4?C[4!6ST$93 M.W.GLA7*>LN3,$K131.-F,. "6:8>(XYVC#)A$%*PR0DL H)#$%T1Q#&@9T@ MM!*$AB"<*=C8"2(K0;12D(3;12G6F#!*%J5XC)D)B:U"XK40?[<0,F!B@VD- M1CU=_;$'2JR!$DN@13:'9!7(#^+_!]I8 VTL)?'M!%LKP?;CS=U9"78?:*X- MLZC[\3%F)D1--^N+\]84D;=\3@-(+U/=$UM_T=U#UY/W!^:7IA7.F4DU,\S+ MKAB3H$B])]7%6@W[Z4"@DGJ[47L^3+SA(%DW3G,T_:7D_P!02P,$% @ MXT1P4.WMJTKY< &9H! !0 !X;"]S:&%R9613=')I;F=S+GAM;.V]ZV[C M6)8N^/O,4Q UD6<<&-HI4B)%1?8I0+Y$M*LEPR8W]V7M=5_?^K>FV03?5LMU\[_^]+C9/'WX M\<=F]EBL\N:H>BK6\)=%5:_R#?RS?OBQ>:J+?-X\%L5FM?PQ'@S2'U=YN?Y3 ML%V7_]@6)]5VO?E??TI'T9_^_&]-^>=_V_SYI/I:U,%U_E $A\&7V]/@X-W[ M?_MQ\^=_^Q'_SL]$F^!L/2_F[3^?%K.C8!B%03R()NT_?L[KHR!* M\8_QH/W'OVS71T&<^=_DF3W!S(XZ7ZQFVU6QW@1W+T]%9[:#P[_VOC!=K[?Y M,K@IGJIZTWYJ4V\[H^DWKXNZK.:X \%IOND^)YOP?_R/_^%;C)EQG:^;=+9:WG_?#VK:IAOCE,/@]L-[$%0U0&15/T"_YUW!KW\ MN6>PN_Q;<#Z'[2@7Y8Q&[%E5/#B,HF@\S**>D:;S>5TT3:A^""[*=1% M\[6MFY['3K9UC8R!N0$M%"AFVWG\UZ)OA//UIJCSV:;\6B!KRM60.Y@(W%N@ MRH>J[IS29;4^S&>S IZ!)^;\=,](MZM\N0R.MPWKHG[ 97VJJ^?- M(Y#CZBE?=[ZKGOYFF6XZ^W]LIP%'Y=5WK<=+EG>(@4VP=5V M U=NC737Q\D;BR7"/MTCBUT4L._=&VYD2%[#>R4PCN#YL9P]ND-?, UOTY?PG&+)V/:'[!^?EY>P%3^-B[3TP>'D;QX;##S?4.V6-\A%]VJ&JG<)6W151[W__X:Q\=P U MO'P.*LZWX*]%AZ0&P*7&Z3CNBM@3.+1J6<[I%(_S90XT@.19P&'W*E6VUM0= MT7^#3_+F,0"R#&;X0_&/;0DL%&FQB<'-_NAA!G) M ][A/E75_+E<=N0-S]H_LKH(3WR1\>:MJPWLVU/^XMN!]O,\ZV69WY=+8(!= MAJ^/50:D;0%N#7KK?-=[UGGT3,4]C!U#G2*3J^%S.)AZSD\^*$IFW2UY=94] M[^W<2I[_CD%O+18H[)0(JJNG -7+$AN6"4I!41K+3T&^W3Q6=?E?\$PT"($Q MX/__!#,$W:E$+6'.5Z5?BHC4Z?U"--#CLE;46!_]*8C'81K%83(9[_D]T"5) MI,(FX94^+&&+\Z<2-LU#8]O5=DF\3.XZB-BZ> 06@!K&LNJ*^IMB U8FO !L M>PU?[^H"M--!OMG4Y?UV0[0+HJF0W1, M",W>I]TA'-K)_=_?Q?L/0)X"$3^"' :Q]!YDP;O@1SG.+GTJF0[[\+%J-Q^+?[OBQ4 M^?87+1K>];9[?]ZZ8OOMMRW7]^;K:_6]M?="+?K21$*W1;AZKX9Q4X!P[WHT MF.)K_Q]/P-3$L6]!K^C0J @)>:3Q/0)*/ACAGW-4^=M_NWI"FP+7>R8*1=>L M7LH%7.7U;Z2^=CY0K M4TTCRS5?EFE1DM'W\LZWT1XN>CYII\89Z] 7B-&J MCD99U47YL!;A.7N!Y\3J]+%*.;3[8@&O 1=3@GFGT.[Y\F6QD1%ZWE7\%L5U MA>)I+Q9JAMV+8?=98"(*S#5T1_M]0]WG#=AU2 3S'T,HSLJ_F>Y)>:G5+PVK>U+KCL^\COT MC3>,NN]$=QT6,0QT#00^1574I][3H\GN\K?M4 >O11T\\:N#6K4[ZU'M;'V1 MJW[>L^?'!0@BG+<(7UOJWHNV9MU.F%)@&^;C M_O'4VZ^] 3>O)HOG !ZCG]ZWC_G_4@?\GS>PG !NV'->SSN*WAE/^[L6X@D+ MS'>LXHV/>V(W_:2.KHN/R^IYAV^$GEG0,XNZ6EE"G-RJ3_P2>XF.])R4!''JIC]K1VS^^,5:4/0SNBF^Y..>*Y1(8VAPM M?[)NX1_X^W*-8?)E@^QQ4W \=%$N5_S6K"+>#L\:TR/?;JI510\VVWJ1S]BC M#EN(KF<9I5K3*&'P6.3S)9J!UI]">PSR20"#+/&/6_12/)?K.9RN-0L0,2NP M#M5LCIS%/^<-'; ."<(FX%5K.(=@$5P67_-Y'@9?CFZ/ID?XYZO9ID(#-AX, MAKP+)"TQ1D'+S)6T=W5_O:QG MT)>7+X?5,]HC0.&K_.\5QOGE-\WVOBGG95X#B?*^XN_KYK%\TI=!\P3+=H!) M;H"NX5,4G'7&@7D Y\'5 +-W)U V:O)PZK!BH$L8"0\*K<9J+3*EWY7,<]PU M&_4\^SQD5RQ]MC4%?#P>_'3>:Z;ZK%1Z*?H)907O^6O^1CP-GW/AB(VPF3HT M=9CX//D(\AF'MQ_SK^@ *T!>+ _OZQ+ M/<-&'#\\B%^UQ 44^>R1-!?X\T)$IG/8N,O*G4%T"]L&5TW[E9!EL?#3DI8. M'$B$?LD""G]4AA*EX@6XFT>!^&-Y:B:FZGY3AE)N)N<[C=X,EKU' 9H LE0P M PK1F2R/#(^/QM##FGS;J(CL\. 8>H('\U="0=J5HV\O'1&I7389.9L!5[/? M8_K07H^:?2U3XFG(YH5R%U[Y?.-0<2G$ZO('V- 9,KD'.9XN)0H-\3FS;'52#4D"A/IJ?P[,4)V-O!*=$R!ACA&1P%+/(U"!6X M8/73$?^C!+'0?>[XZ.>CX&Q;5_8O/Q6@ML"U_+2Z__?.'X&O?RZ^E;,JN#W" M?]P<7=!_3W"DZZ)Q'K;,E9USN4;A^TUF+;OA?W+Z5#T4A0QV63P'=WGYW'[H MMGA8N?E7A\%G&.Z!HW%@[>"ARCF3-(!=!26]+!:6Q3@O9C!WF/DJ_PT(]$!8 M\;O1ZR.U 7I[HU,D!8%#] V_'T[?Y#[B\Q; MSX5X!0R&4F>[>N)%LLZP6( 6*(E<2%K(W%=:O^F14L+^YZ+O;?93MM9S[S=J MK\"Q3+A:T[P2*&?.RH"I $*G80 E4=P5W>8 I: MM=T@L\4=?0%]'7:D%@E%IV6VD3XD3XA[R'R-E/<(4/'&F$J[("NWB+BJR1_TO*EM4"+&?"]^@OL!>] M^@COPBX-1,B!A3]J,$I0RA]\:H:EILF9PTTK5KZQE9:A>$+G.\R4F)6@K\K6 M%'++X9K7Q7=H#N%W*EG"Q9@V;(DOB7>W&5HXPW4(XII*?*%1JL M>"-@EPN\T\5<" V4'Z(S5(LW=(U$A[[1[D]8I,C+*/M>!<-AV$Z28D7+]#!7U!L5#GYZ2$,#@0A MDL03F]C+%]>&5>*$;T0^AT/(9R]*[=9S:E"? 3Z[?/DO=:?R!_$,F77!1LV MR(!6:NM2:VX -CF<*1P274:0ZF*O(]W#=:(MQY$Y-X1VY86>RS8+%5M^)GY1)>E63.Q/T_C+?3XH9%X56W69O@;"-<-\F*Z M$PWP.2J16&^6+Z%SXSCAMZ'+6=1?A%TJ* 2__!6Z;8SK=%\R-\V=@N2#A@L(YXQST9+58E]P_DI'(?LBLTH=4W2_+AUR"EV+\R[*CK(?6HX$/?,-)W%ZAG8# M7"WZ1U[NNQEX(9"*"G+@K"O[W+Q?0862THUQ>Y!C2Q8N7&[S<]DPTRP;H2(<$5Q7U(:GU7:A$E_@*=$V/]2J#"*(4;B.&6##H=RK?(3D=\U#3%: M7B*O8PM\W[X^\P(4L'E(=BKPZ@T)7OAHJ!6&N3EU(7>C",FN \%=7+[A RY MZ3LXAZ69:>E5/..9OHOB09C%J?#(+ D'2=IA@=0-NIITQ/F,3YFUF77PO3H]'S4KCD.D-,]NEOX3AI"L2>PR$N52R<> M(272+'?X$6=PP3W=UIKDRA52 94Z%=\V:':2HE0NM&IE=DRKO_!UR4-%[P1. MJL H!&LN:GPDIC5:)DL*\Y2ULB/0A[7F^XH#/2)#H%0GV^(@,QVU,6")3@Q7 M:T=\T;8;1\-#!S>EE!,AK8K-8S5W#/>/VWI-$V0CH/S&DST,$@I1-'0.,&AM M'=UA,#PB;8# K_>\,7FB"=>6MI_ MN2<8>T*13X=PO:PV&\RL. S4%$A7IO70JHD7/+&[MP']MWJH\R>8Y.Z0)7MA M[E_(ZXS!:!]1(-P/!S3SW&6A>-)K#P2230)!VD:C.(H M3$!)0??"4Q&DXTD817$P&B?A<)1(ULEHD, X61!-,M!H(M>1^2X8A8-H%*;) M$'X>AL-L%,:#-%!9_K G^L>ZT%L@GCZ\.SKR"0P9Z(UJ4TGEM^X+4+F*B.*6 M*!JWKJOW*H*IB*>H##?C'A63FTFZ$VX],E,N&W)/YYQD@/?H?KO!WVHKC0)" M)J7 L@&7P&$#T-$4)9&3%,DC1$J"^[@N<*UH2J+."(I]3:I+68.*CRDHJ,N) MPD!ZQ'.U!5)=87KCLOP-F"/^FC($8#K F@O/ON66*;H%$H'U4U0,%?>\KMD" MI?T)Y8KF+%Y8X)LXVJJ:%TLQ&5=H6>!^<3(I?\TX@MTO6KLI.H!RU8$:TAA3 M3%MK8#=@;-Q5?BU':QX\Z.,Q&T_9&CU\>P9_% V8"@DXG,6\ROA>S,GA(:'/ M&3[FTU6H' TI!P.<01*:!2(QK#C]5$<=N92,26WSB($%/>FCO?F$V<+OXP9I M- Z'PY'UDW""*!R/0 AG(_QI$)$XEFN?A?%D!%Q&N.Y!/N20+IJD6&]2=0UO_$$?[8_F$BFZ=H_I2 M_]9(;@4&=U9/!:K5*@6!@U.-(P3UU65]RQ4^[*K3+(=]-<1N2G:_LP"&OY7L M&Y^1UQUN[H+"9G0BA2A\* :QQ@TT==A\^,#78L[3#M;Y2JC>X2;$3,AY4#3B M.$!Q@V( "PV7+RWNLC^]^$NQOE^6#,; UH<)_ PD,HG"T7AB*&@$=R,>C>&G M- %J@)]$GF01%M,@98V'0E4Q6,)#D#QQ L(D'K<):P@$. A'Z8!_'H!P 8+< MN6HR<-<O3@860TD#6% MZ;=BZ_JI%EZ:'.KQ+RV2175%C<4;8TW$RE"#^5]4ZX?#"R(F?:MX0"W6%A7*$X-!D'R-=W[/"BX8,[+9E M)F_7EDC1UVBQ)1UO9O*2U 5IMNBY+\5-+&/J[QFO?%N M<2?J)\4*9V][&V9ARR MQXM]TPTM'E,RCH*/^A'>),N*O$?GUKQ I9Y,F*>4&%=0%S)%P+*8/Y!*9$P8)2Z, MNQPF^W<,+E@S:E!+@^7PW:3(-7NDM85"8H:"$KQ?,Y.527HN>:A>0F=79.,M M]Q3[QQ9+<5WT*3_K#D/[;Z$%C<*N^ \#S+I[LTYT63E\*F^,&;W?[+) IP2@ M?Q>W3D(85]M:Q6Y<+Y"CC"A'!Z=$49E(([3XS,XH#(JC&8+OK?'>+!6#L?(Q MCH+IA0$"YE55HN+;RQLB2RYK?&50HV/'-$2H71V63X"*]])C)/O(XJ1T@]Y%\H MQD*"IPK3OO ZE)@@,.U9'[Z:Z\^@:)7ITZQDU6R?@'4QV_0L*K>6--7#&1>E M.2$Q.$".H"=D^NM/'+'W'M7RBR)Y_/0\M/3GF' MR@^.TA&/4"U$12)7Y4;F^( B<2W9CE)AN5%Q+M=A2WHOSNP +&X.)-'@*HCY M7KD;;T%G>2+9A"$<^)\E4UBS\0U+X6_0M!:@!+.NHCB[O2%_U)37Y"9]\DFE3^J,*+[PJ'4 TT/O$9Y74V .(3UD9U\? MFC^9M?I=7G1MC=-+:XQS:S@:P\Z%E$&;ID+_&%Y^Y,CR"@7DU3"@P*(DQ?VJ M"^5%F]N.-E"EM(J@\[;4WR3VJ\+1(G[LN9%#8%T\VS>GK2FV=JJS-/'=I@,P M D?BNXUC4-:S5'V2166?Z.@-=DWG0-/ !LVF'7I^M_?I=%_EF4\&69AD"<\\ M&<=A#'/Y?3,G!*I&B_%?0,E#DX1BGB<"M%%ZZ7JSXXYE:+G[]RFR9EROTS[>"R2NT:(3+$\ %ZG&8BD//L_9G M:4\RWBN6)]C5V]4*73YBK+\+QH,P3M!@ MG"1 A+&]^Y3MP-Q&'B?_9#0*AO!6,HB#:U5U<##,LC #._4]_#A)PV@X@A]] MLY!D1/W]- F3260F(FD"=\30#P-/P4]OCDI=&(??Z$#QD^A)W+!V*7Y3N1NL\6*>,XK'OE4Y MWWN1Y5@9DYJ BW5.@H[@3G)1_3E/(L>(VTREU_)&-XX[QMD9Q2QG(AM5@I L M2N4E_DRV,3D_3*R#$%/B*=B_*@9-2M&PJQ0A- M7<&.-%G?5/<*H]HB)PQP]\6,HK7MS#VV\AN.=+TQHGEQ43Z: %K MK2!@9D(F]YBC 4(-:<\Z.T6U9)VU\^1G%EB'*D8F]T+1#8.O-7I +QY VQH$ M T90 ;YO&:T2@#]F]KNG;5_N_0:R D'WNJ:JTD0'KS62MXD(@LPIEYP.^P3* M-8A%S""I82+(WA3.RMI:'_WJR%01G=@!M4.-+II;+GVGZK&-^,.9"@\M]"M; M-.?>Z!UK*RI!$'WJ);G$V:-6VGXSG21F1=(IN@YJ>&W%QE66.0;1-RIKJ0]D M@%4>"5+*FZV8I%STU__,F^Y[V%I;2%QGUN+^< MLI;2/C%O^-2R8$%'4]&U(SMQ_%!Y;)SR"FM5*MT0@Q;*^^ _5C$%[1UI5$ZH M!WU&BTPGWX \HC_3'AQ:[E%<"T5@>%1V@9!?P+DWG#'$DAH]K,:7C:6X6.?G M>AR,/E-R4FY-Z;N.+T'I9UV7JB9/H68.%%-*:4\*JR9[-V^$F-<2)@JGZ:14 M&,7\L81M!-OM1:6AE!U?*4T:O>)KR1Y<@X:FE9FO1DO29-^>]X?@ JW"(/I@ M*56V<5+=HS]&M"\:O4&E$4;\Q[9"*E*;Q*[=@^V:)50Q?\]Q"B+9F<8#)#O5 MVA]*A"7BX('0?J(9Q7TSVF<:^.6F7)58PK#G=_$!5E+4+BH]PMH")10UA5GH M?D5);\_A(LXV2X)%QN +_XM]'A@8QQQA9G^LB2-OIY2410*]NO65'*F_) MT+LE1 T\\^VZ>UQZ&7;"G?)\&X*T" .U7,SH1R+T/P%JE_4AV7JR-U?;AJ)' M5-!-&GC^-8=C,%$DF18]0%F1-*K]H07*._2LH/JKT]TIDT#3L74Y*"A#^R/O M&-/"/WOR%S.T+Y=[6<2E(CR-?)"G*QIN\Y8]Q'1D3$D%L[UZ(C0EJTBXKM;P M\ZQ0(+G!Q^(>['>0XZ AIKPF W!GO7F+JD>.J:''%?Q'J0W3VR_TYN$@#E6) M(Z5$-:IT4:GZK!H]2S)4(\/I L=:O3V]/0FR4:RL L6#=/U'ON82KQ<5UR,! M$-Q7F!3>9Q.S!Z>-68#6@0M+@6XS=&9)CKGQ%/YC"X;8)M>5Q/!OG 3_PO$1 MWGG7Z:9"DA.I(!.SE,Q:#M=WBCX:RV'!F4A:OX\2CE38?D*2_.5*ORR$2534 MK2>QS:U!"98Z3S2UCR?@AJD+HS&$#]9&+R%$5Q2 I M[BRB]2!WIEH /!(E_68J@'>]K9NM=;%X6:IRR5D9X]A>,8ZMHNR;JR_:AK4H M< ?B27"@H5;(?%P_'!(K%K0MM%Q[;#EV/R;A@-+L!N* #*-A&J;)H.-4= -L M4=)V@/?&TW;L@N(PN_B*@3V%#P>_ I-6S C(YB_;=6&SF^GM<8>=1$/-3@P[ M.M>"B-(C$3GD=Z@+.%/%:ZT4N[[($MSI <0'G(L8"*]#HR@)Q M')'[BV-V-CW\(@H@4]]2%X0H)5"@28A?V',C7Q_E/HK3^=6ZMTZKBINSG\\N MOYSUX& R;U8I, D%K:2M?)85]N'1R*0EZ[NOX#1#T&)?N)DS0]\"=.?VAU! MC.E*!T/IJ%9PE\6G7OA/KPSCW_?&\H31P&:84TE><4;I1&7-\U-3']OWL.)[ M>\\%SUF-?^,R"IO&:&OR5IG-ZT3G2FPV0602%4^8@UZ7E.V5?T,Z^OL6=*YY.3-Y M*>QAMX/'G!*@YIV[$4EU%2B9H5ABT/$)6.NAHE_,>MF6G!JB*K]$I^/I4534 MK"@T22QT?(VN%_.[)& M6NX.XEXM/L37OVP<%Y)*6E.\E"4>98HWGLR*8//RA&H9T!:9=YB#J&JMG7$J M=I@O"_M2R9R%[6@M,I?J)V2&R^4.XI32FH7-3(P=J959^- , "=!GY;M'=6NR.IFHA8AR[C+KGX2LK[,'@1!O-*:ADDG.*D^OBE MNT562'3%MTU;NEF[8,7>=ESJ7U@!>\';U35TK#"2.&V$5>#NW2.B*]=0S+0V M9"0Z]U"X/RF&,V'(7'' N?3>RJE[ MC\J.GWY''M*Q@D-HOS.FR@TL\!DF:=OB^B_*V-8.!$U<+1 FSZ :']F,_=Y, M0N?6Z'#+HE)*3!_3H%O*Q03%6JO:\P"=)#$8LV>C@R@< (WW[L $=B!))F$\C+N !DH+ M;7S40D_ >&2G$-,-E;,#%Z;3WM&*0;/ZA;Q_VA.8K\7G MV#3B<^3,86&G^IO,SFLVI5$)AQFX$@UF,1P0;P7]@JHDZ#L2"7MA1=0@':SG M3@4/L+2-N:C88_*)^K8]?*OK.OKTA^QSF\#ZNETC<*\VDVQSXSSE9S MPB3&T:_1:TB\H(5 4VEEX=@RT (YD5)!ZPQ5A>\=)5\1, 45Q*H2J8U*+P/" M>T!9T'8+W+]H22[AH)<]N3:Q"-650O&<:Q\B*N8RCL/A* JS%&ONLB0<39)P MB,F-!OB*(XC >C<#R< M8,)D$J? M@>!:H>AYJ53F[$.+TZ'X9!2'.,P2=-PD@Z Y6P(U)G=J0W,($Z& M81H-@A2^-I9,2+O$!,TW^&,:#^"KXR !WAN%Z7"(3(OE;#(9P BC8!1A<6"D M9CR&)61A-(J#: 3S&,%\1O(W8.+Q))P,XS#+<'X1[,(DYE&.1=A*,$2'6(DGJ4AH,Q"+]X%)R H,B!I\.-&(19,@G@[./Q)!P.$UV1.@XG MV,-ME&&<+8*7LW1"_NERS0434I\Z#D?1!(AQ%"#"P0@H)U'S^"OLRQP$RC < MPQ5+8'"\2 D],FW*'"XN(^P 18X'802:#SR0C/"B!A?HE ^FL"/ S;!Z=L*I MQ: E329AE V"S^5\#D=YEC>;'Z<+>FP(,YU0D2T0,U97#V)5,PO#3D!/2>"^ MCF'%KY,^UCD1B _P6GTX!\3!:?M.%<)S5;]OE77$PZ/D!]8P)T?Q#^KB8-X0 M4]>^%6)*2>T []]<79_=W/T:3"]/@[._?3F__GQV>1<&EV=W?4TJ_= O.QJW M]7^B#RY&Q*3)]%*7[H-G:5W-KP>R!)7N*(7#GXPH/ST-1^G8!U\"CR51& /M M3(9PC..) 3$!C8^TU#'0_!C$P9GU4CK*PA1(+Z*88C(8]D&:4,5VF, T)B!5 M4F"_&K0D@P^.DB1(1J-P *2)%=F;VCB98,,>J 'X$(@2D3U3N%#).!4R[('2 M 0$ %S8>()_/AEDXF8QA;@VP 1O!;FZCQJ"<@5N;C!!> $A^#!)G1YO27N@1 M+Q3-&PTKK#I\-P'N,8D$PFT\A'^ \MTRN3I@_Y=WT\M/Y\<79Z#ZW)[=W7H) M6\,YX-!=V(13;8_N('+_E_H!%[Z7M*UB>=AE8#+#">HD<39!GFD4!0:9&:18 M[Y\.D:%&=OW\:(*@$5DP2D"/XK!3$N%,.TL>,,6 MOC',*%C? [#0AV#@=*GY/30YSH!5#*1X*1VAJ(@\;@ K,:E5\EXM@A9$10<@ MH3>!@70:HV^ 6%!5T+[E*?/$AG:B-MKO@O$$!'J,DA^TO/%@2)(=_A$3/$D$ M7(/"XWA2$>PD_ .40CCA")ZX(R K\I.!E@#:Z"@:!Z=["J70:_\XZ/,&AR9L M(R*C5QV]=>@1?RP9%JHN"=F,C&),'=)_I$#OW[;%/;9S.O>59&-HUP0R7 L+ M[W_!X/P\1G#"Z:>^HFV5[L 6T-HNG\ZITF%#L9LGK!BKMLW2J2CO'C_3):'; MS7JJT3U?XG9)B^#=D.]K*R6E^QG+V-> /MW@!)JPO!?V;)R2<:EZ;U0\GC7R M/3**?8[1QFX7*]49'?9]=77ZR_G%1=_O7_,+M@ "6I@0C7(.:$BA-S")#[I5 MK@=HD;V &3 SX!R!:E77\#T#_717!T)T:@W@THZ-A\_WBK][?N,D1#:QXY,3![GH7RSCOQ'+X!-NL8Q/_[VYPA\ 5.%1 M'W\&2^7JQM,NR."7[JD>ZI&DLXSXT00420U&T6+%FEP#F[.>KBY^Q.]/'ZM-6C7#) MT"?=:J_&E(^C'*/;K5K8+8;(:05;!%J8#KB6ZRV.]US5E),O8*# <(JY^#]] M ^'4*.SP0"'].0&)SQBAVRY-\J8R^1BEG2RKM$7+!]M:+NT,:*IU*=4(\L7: M@NW_!;]VNZDQHF*ZP=$X^4%ELBV6544>]]%1++X-0AWG MT.CG_"6@;.QXP%-R/XK7.CE*!OQ>RB.\%<9[C^K.=:7#1_A)NV"0&!(P,MPK MGF*'./# J:25S2C,,470K'5N E?L3%>_8RL+653%N4"D@/"&F>IKK,L.5 4T@L#C3W MA3\[/K\[G7(AITFS482GNB!C!%DG:]-(_[C%/6=-V:BC MSQ0=(#(:X(,,PB!E>PNTAA38I^"I]*_4+O'RJ+X9 M=KM$@T+$(%*\*M8.[FO5G(DS\X0 ^(^42D95]!R"4>E+F-10U(TJ,N?8G7)A MH]N_WCYM9M(_#,7D5^XV])73KO8@=UMQX>9L3(8EWP"BP^62#T)/^JC;5B>4 M'BQ8.M72Q7 .IJ]/R#O/#.9D>AJ\&[V9^_[[[?$)Q7?K&/HR./B=? MPJ]JGMKE=LB5^K@7<#WA7@EQQ?\?N9?96E'7%OE,ZBH;DT;6SI0#3>OJ#D3H M]?37*;F[3"))J>I8I>B7E+GBH16NW%*]JE.%6EG=*K!OWXS*+;$85V_@/2AN MDLRS*D$#K5_>SR,A]U$"[Q92[24!SZ0_LVWD7 MC%/T4HL9&F/XB)'(?3R_"ZXOII>>EO%2 MAA8<*PS:?EW4.Z1#DYSXZE 1;Y< *NN7@H"#^'B M-ROW6P_16%A&/!J!9<$]X/[6P*2/O"^:%$O7CMK72QJ-1^%X-)+& C'&R#M> MTDX[5FZJ:K&9RU/LM'KSY>PTN#B?'HLFW]M)^]K*DYM*GMR%E=O5?U+[?GHW M").W-\:NY+T7"Y!;1P=4]2%GRKPA1* ^A6;?.!R-!G [$G*"3P9@>L%-APU" M= ,>D&*JPP!#8!C:'XY-)9']H$I54DE;;$+:3V3QA/SZ$9I\X0C,/K+S M,!EA2$8?O#C!8.RPT]YW>GU^-[T(;N^N3O[:N4;4'6G'Z3EO,Z!*HVKB* QN M"4,$L<)BUUT$C%6"\1B1D\-D,@:Q?IV[< ]8FLI?$><@_@)C+-22@V\ #3 , M.E3.D[RZOCN_NNR0,LU=>J!(XEHP->ZF7=V)[6%]MNXY]65!-\LM J@$5US$ M@7%=#DQ+P2#^0A5DLOBD1R2WEU=Y)8%+@6147CB#E(DFSF([*;JU652Y5'[Y3%E@P-SD2O]HH=UCZL M84UUAMXHE[+'O4Z8N@2^I3?%IG:70CL\[>/T_";X>7KQY2SX?#:]_7)SAND> M'>YF0<:<6@G?_4RM9URK+-DJ-E+IP<:LZ'3*.V!PB.A]Z.M=%?J%MJOXBE/! M$S#J_>Q;/D9];_AK]U5=DYK1N$JUL5%4+4NENF?G-;\J+?V<7HP]!5K.:G9" M&K64=3.EQI[3W$ 8LX>+KI*U+"D!L_TDICFC-@JH%R8IJMM&X6EI;M,%-K$# M%P^FVTU/EY#0QH[:W7\4I9VED/5JOCX$;&+^NJV7BQE%-I2-8"(L$S\0(!X%V8(/&DRA33%[7)?_0-3A(\H-SL#((D9? M;KADXM%@T%3>%W>!P!AT]BX@D@8M8F,L^BFX>@VER =/U(4 V@.P2,,3Z6^? M\P=;">_N=[N?\J$+O8(@I+V('UJC>]".VM@KG0G\Y!G#+'VO 3M+H;1PP6?; M TP)RTOS-4E+Y%!4$LI"S@\NI&&0]-9_V8EWQ.X\'A%FO>%/KBL'L(BIGU.& MF=0=PO:A5N==3]COY.KS67 W_0]?W$_!R>X;^#-C*>3.>ZJP MM+!:B\8&$H.E2B]J'=TD*\)UAZA,W5-L=0DGSC&UX9A3OU9 =23K- M.@H3L,?3R9C2$(=HA>V:&(R4AI-D$(YBJM*)L.M8.!PDQ-)P'TX48_D+G"2V M$'5,"'QBRM6G#$*DD&:!C6A&&<><$1$*OBO7,5"+8ND:B_3UQ-U"$3N5?J : MDV&BFMKC,<>1^A>S7,&'T)%@('G:M59L&R6' W[BDWD.YJSM7WTW.(H"N&E+ M9(V4*J"011A4" Q+3.O@! M!'"(1Z/!?@_^].G\XN[\3^]95V3@:UF#[#YO!CUF/U2NL$T*:*GR085:*@,S M-(84ZV,7DF)%Q5A49XWS:Z<0+0SNJ9R6\;OJ):MN-G+-A6&V=L#>Z\*1Z+P( MXJ.R4M@OK"#EX/2+O '3ZSR9-THUI]Q#PC\FK*L9F@_,JJC_86.73>7K#KC] MBP928M5D?X?8CL*=BI=!:S#@H+Y%Y/8RCO0]Q)LG^+=B^A!$D<*0Q@.KJ&H* M2/S+K7-$W8+=-O2* ;1511K8Q67-3(G_!/>TG<&H*%3A#YV>GQMW@C2XP :W M,XI\ P^DR+8I^N1\+,:'%<4/QPBE>HON[ OF+>?U1LK>R$#'-.B*6]\\R+LD M[CX3D#Z=B UX#,]MER) E;7**G"-Z3:Z?[!<*IR"/2W0G;BS8?"TO0?R"!XE M5B%WV#,;G,Q?MDOB$!->SIU:SFEG.9B6-*]FI/_QZS8#H>G >+= Q,)."5;L M=@N"%70T SF!PZGJ:,Y>,OA5:D270A?E4I*8B&T:)FP!C3O "WI'8#[,B[H]ABIA27HF_;+W&,4GV)D1AH$HJ.R4PP.,MD&+MT MY./P1!AE!QY<0X;C+3L37_C=8V%]BG5T2VPRZ&%CT%?=BAHEU="ZV'+"#+6D M]HKX[Y+.M^[((!A_X/\9ANB\328#:DJ*M0HCGI4,*5U3U S5E@,KPP83438, M1VF&6=\&F_['-4;0!=\=:+ )N.1VHB,M*E=0RVX-"HE,;I2$D\D(&]2-8#(? M7^4G:DX'<38.L9[QO?[0C8<.C-V%^7/TJX-ADH63S'Y3-7ZCWBR8JCY.(_AS M-@H'R=@'&H_IBY,DH51T_'F<@LHU'DI88-=Z':0J 0H3DK21]$NN#E-=_/#A6:U;3G$S";#P(#M*$4OE-DNO!.*/:A?= = -*#!];S5O M(6X8C[&V$2MC57SQ3*%Q T,))L"*$RLC\D8R(B=8N1A@?>,XHST M <6;,BII_+)632PXFQ9(*8OU,WQCR"#C=)EXC*%M[!P[!I*^O,)4'3A^!>2) M!\@\+TICL!63(!YAT7(LI.EKL8'U/=A=90C_'8^&[N9:H=$/P4=R=OL+JMX% M&9!Y,L$A: 0VFO[A&E-P"K&8+I&(ZP8M;;)[$@ZG/AFZL0@P;Q%69B- M4$RHPB.'NMJOO(.[C_78T8C25 ^P<#M+\1_G:\$V,R#R.&$5O.54L?:.A5CO MG#_HM$ !8E/0<27Y_;P]I$D_;9#R=#YC&HH7 STEN1[O%B_UALW9IZEC,_:^Q.%L_5!Q3 M_T:I"J2-2S91*5! :['J.7.KTTPF#,J%,EEU!YG0:B'C\$/'V=TF$$'9<-$F M^\[-"CN:(SC>W1^3ST+W!,- GHY@%FB4\7J<#$15"Q!LGBLQ/CG?L[V7Q"H$ MR:A ?!/2AU%+"ZU6F]7"9.A4(+$T)+KB\^TY4[XGU20P+*H]A$J_:D$VF3B@ MPN/<2?Q.4B+[\&D_;:A&'Y&V&B3=M8>1O$ V/FGG>4.US2T76[%EWS[.>VTK&.9\,)"J4)R>9=_!1J'URP0T*WNR]\-TR7IG!$&,G,LU7. >"G M&'224DG?&>[ MMFJ)+".[!>4B.%D^ZQAWIV\4U5K+:*0N H_UI--7=][Y,[7$*W0A;?OB=!P2 M1YW$%V[1)_X,SF>@@]R,'BJT94!':AL[#MTS35@E9!A1FRL4 #0?XO M7]2BN#X?R=7MWKFV!&]=-K_)YXU[1L_"3UUMF"K59:801.M5A13A%+JKV([2 MSNP6-*8''7?)4%B HH!S?;',W5;T.16".01EPTFTE'KS%LVL+N\YP&%5-8A3 M#%5D!^K6/;_2\[&C!?9(H40]V8IN-MIH5D9Z^[-$0L9O*)1/B?OV MHQ*ATI/:J'QO6.K&\3-I][737,_ZA!W!LA,'58=MS>:ZF[+!\[1F86]#R*L5 M-6"&OZ#HV?J0GG+NW:BI5K;?=_F8G!G=R]?GS^1UG>&#^YSRQ-/TN>)!3V) MTSI13:ZH#>U><;J=WVO]ZYP)3O?M@IM<<^:%E7>^*;_2UG6EZWUA=>%:DL$UAQX ,H[*#9%90 M2K795K#XSOBZBJ.MW+6L"DGJ\J\/IL!^8@B./UVQ P&G=,,=X>?![9;4BJFN.>&> M505#GK);LN*C89S>D@J'U-DXT88Q03703A-N-_4:%.1B04[%!"W2;D,);8>$ MMDLIV)(-A)VQ2"QO@1 J[I^"]T_GVVD 95Z:?)Z[&PP4"!WEW= 0^4;@J4& M%<\JMWR&IA*.K>P*S<0W)H%>]3T6);*8*QW$-+J0N!Z&,EXD$PT&7#'AS\4!_K\/: M+LZFMUT>QJU^=G H?@T!D:4?#ER10I+QJ&T=ZN2L%+=;\7">[F*!"9GT6HAV M2/%8X9Y*T0^Q*JD@ZU:HZV:;,J" 0],1V0*+=*%'2J-"C$?Z)\C]7(8S?"?D MD=K82!*?!/IC@XJ5E/MMN9P?(E0;<(PM.10O5:)-)2EM,C&IY;/['-8".R]? M9DQIY%N\CU\5M),+F605D^']ECB\X3\T#%_I5Z 7^8;?8\$5?Y%A$->'TD1' MNT/-D#0]*S),'63X Z\T_E%J:_6,Z'EB5.!-(3M7^9W(\$$W8J&5.@&*Q[U3 M@._MMXFG>QK_T'7_1MC@5O,GP7JT!Y"VD2Y4-])FZVWLY;[2$.BMD[7RS8EQ MM1*K"9H8YTA_Q';:)5E(.!):4E;!RT_,TACNG/4T>85@Q1$EW5JS9-IYFM+B MT#=77RR\'K9[&#Y=F-2+KMA4\O%%N]/4Y.=$ <9')RUE"GMR>OV$UZZP25_$ M6.M\C(Z&1R>FJO)B[1%-IV*]W;1:JC5<"1Z[=1)R^74?]34WOIB5G+Q)WZ%4 M5()XG#%;1#^)2F+ED)C3L,UNGV2L>Z5(J(NR*J0Q$IFX 14AFW"]N,4(K-YQ MZ/'[JN#,NF8!,IN:I G[:>MJS5@ASQ:P/3"9!?#,BMT=:&>T,Q$D;->SE1IJ6@#$>WI1=<1"Z2:5==-6 MKEJ-MTAG.:P6A]M&9_V\"TP/K7;UH-'8O+V[$$(*D28B#"=[*L1WO3L"X3H) M)R,5!-CU+$Y1]?6BL^^V%--P(R"\HS".!E1-Z#10[LOMP5[F4CCL$EH[B=OY MDK&IJ%A(=1R@IF2(SC8>1U(PEQ"8:Z?E-$$3%USP0JJP78..:Q@FA,\6(KG* M@;>L52NOB7*/^&9I.SV_K[A!$K<\.](EJH>J(;)S:SV=+%I9=:S,JS3E]A$X M+8)>H\S.5,RXYBX&!Z44B;P/DJ.T^Y(J F:&E!QEH^"'5V'D<5V<8:V!;'<1 M7U^!MZYIC<)!.J J.JIJA7]FHS"-8ZYKA7]&$<*V<&GK9)"%DT'$I:U)AN!> MD5W:&A$TZR!+>ZZ%)I(D',<8)8\$;T_GWQ\D&6(&1SI&O>_-^OCZ9>%J]O5& M7[==W.DY;]K^7Z!JN/3Q #/J/[*C5RGC[O+"/15C_^%(V5\G&P<#EY,0;BFXS!)(L'-&\"138:"FQ=G%"QV3FDXCL-A1FBZ<-43Q&%N*_S' M7V[/+\]NT?OP^?C\_L4U.S&#*5B RT!1PF28Q(>C%#BRX'@I L+U@KYQ,P^#+[10F- 4^#TI(7=VC!DY3F!O<890Y:3C)8B$; M:]\8@)KP(LS7I]L'Q((QFS2*#B<1O.[NT34VQ **6.8E:D]_R"X-TR'(MLF> MV]2>: 9'.4@T(!Q/\R1?/E!T>+J\1[WY]\YP".)[LN]!7J+I2UUH%7K#4_6 M'>8%4>77$NM F>DTV$&G"K>9$=9. Q=MT67/;)'_;!@)63W)=:@4 M9;$9C^%.;V=![2RDONX"[8WJH',T;09U@HH<8HGSHD'@#!'E=H3WT $H47DP MDTD6IFF&PO-PLSG(WIYR@?-^@8HR@<#<8F M+D_C*:@!:3#F'FQ5->SHW>:X)/8D&H-\:8U-.',HU6 M!BA!43HFW8P^%C+'P/,?2!8YVHG./A4U= M#NB.6+;/"DY&Z;I@LF&.V[)\U,+,+4IW-O'>I_N MMV(N,'G5,=_=]$S ,CXTRO'*/1<$0,G6BT1'N3J%DT0^2M5P78^D$8UL_87=:;JYG5OBU#X 4G!-AT2Q)EM- MQS#D !\/]\#IE'"M7B?W9<8UT*A.<2V=,>%5^ZILV;E2UI:YZ] WP6KHZA'* M$@#%AOMF<%F(;O/%7CW5.J;076.( VE30!6I8'+(>S5*W^UJ[YNLA)C^ZYV< M>8_>.A_Y0-868+XME3*-5TN9%3E9FSQ7B6"=];Y+HR&Y:<@A,1H")^XV2'?- MYNTZW\Y+]_NVM\!IFB(!OG:*F\G;U[+#!DJ4[&,#=4[EDB:=06D <[II90>; MZWN,#W(=S>2&56NWA7@'K,W?9:4[_,$7M5OO>1C[%ZH'$,*W#A"O*XRRA&H] MP-8?@2H'SU^2TX_(AE!>)QG\;4CZ Z)_@U29J((5;E=LG8^*KBJO+EI!MJM=_\A-&[#,J1:=)C\B?\/)=A6M@^+0] M#U6VHM\LL(VE ;JC5,@M>8YI7XEM=Y&!OAS?GOWM"X:JL3%[%S_#JNXZ8[#* M'7A [6=?_=K1J[8_.S(LT_]J'7PL[FMS'>*!D_J@KR,[/37 CH+H1D\\(F'8 M*-= ?M0ECOS";>.A:RRP=QXC[XA956"^BVMR'G'N1ND [H9&EJ"10,?') S M6RE/<_AE;F\2AE3J.0-/D([CSZ65>!BLM-C4NCZ0TRJY-ZHX&UC]<). $/20 M-K4T+$]21E"?1PBCZ2FV/9)XM(NQV(%3E))#X:^H 5#"NG2AYSCF7&RL!4:@ M=:0%/Q-AIS$.>[.LZW2+;]EEW+5V X0DF6LH+I8*'''#8#14[==L,8#-$=5V M(S\%;]3^AMIP*;S6=8^"DG=#&9-(ZR\4788_PTVM7'AE/V6'.VC;N**CY ?/ MB(*$*K8S;;,#DVJ/;*L%G.;F&-6\RZT]5:OL?AEW\M/Q-=@X=$@=-G#^Z?+\ MX_G)%/B H. A;O;UU<4Y)3X=7&/U,S"\]QW_(>47T_T@3DU'WGHH^+9:?J#T M@__UIR?!!_^3_TWQ)+ZNQ^2U=. 5:P7>0/E6JIR33]/IM60UF+BG3FQJ[74N MZ*%.-X$* :W^3OO8[B^@X>0(D)X0PS2QB?R!DG< X MG F4[5+7!I>+ZJ/.'"" -$2UPG0*F(E*KRD(+(_GN&LVZGEB5 ??(?9YE=^@8 M4:6=@>E@!S#GQ8SK+!$NNM85\2=7IY]513QNLWFU^ 8<6A0O3-QQ.W!KT8$# M2&*S6)%K1"4%LGT \XL58X/^;F^Z+C%H!+2Y8 QM2M%:ODC) HNE85@=\AE MK+W?2!]DL!*+U:O%NKF(9HZ=6A*=52/CXCM-"\FWH7ZJ9D<;/I>.YO2%^?R9 M*FUY[>_":YB+V**JV85:!H3JX"O@P/T!U;>105]^E\A]D?,RW,-+2;#1F@!Q[:]F'9#0[9ZSQS MA J+N/![Y&HGAUR!_M$/9P;T;^\'@6A.>@$+I7.@ R_X6#X\4@HY/(?+_5JH M?6"-'>V/\J&4"A*=L[!YK(M")>-BWCEQ6)=7**62-_Y>-2[/6?VFRM87!<8I M]09DL3%]HL3UF+7:>7ZC0PE[/(+A2T\,@NHO'A&%1C KQL ]7<&.K2B(B6;A75)^6,+"G>%]+^'K38]3H,= M]K+@0LG,HJL""V1,7$(QJK@;K"I&7LJ3DK-,CUBY^23A.VY\>DI8[2\:.E7U M\!%<'$R5X<+)N=SH&>=TJB7>FR)7L#[@5^2ZQVZ5F*F(F0) M@1QBVWD0\N] M9W6;U&G4C:J7,N%G+H3L$M7.QK1[&2&[6]L>MI5&_R ZYG%HPA^M2(/L6=M> M4_BQ+BRDT^[$$YFY]WIHV"^CI+95AF8C)7=:AED1&TE#"]<6N5SA/)@ M6FU9"@"A!JN^*\B\,9<1?424S(W)J@6N575704MI]6J MU&:42V)]C71(#7MZG(:$>BPM5E6FMNIOJCN0Z'QX=2Y.61S=,O3%4;HDT2YK MT_JDQ:^)IUPRTII49U#D0T>"M%O2%-ZKDO+S=:MQZ$9'1$V6LID2GB%)W:(1 MB<.D+Q &]X(^VW- NQ]O90HI^X78BE@;#6/M\MJL MOG9VCS=,?E:T5+<*K17,G"E'\H&?K*7 D:J>%7 "]S("0@)N*/G5J%%*KJ"$ M(VP$ ZL22>V\[:VJU)CZ>\8B<^<4MMF B UR;R@H;Q>S@+ MA;]SFG"KYY[" M(N#BKB,^#&=;^0E8'Z.4X;[4MI4A2=A:[+3WL;9F'+(NP89&PV44Q7)Y%'S4 MCTC?"0<5W';T8LY?7C:8AU]9=X'[G0O4J25K5/F3\6V"2PGO?,&M=M+#]K#3ZC M&(< 15P9VTY(VBY#N6O9/E+^;\^H*0BL08)J)RBGL M+Z&S*[+QQI821]M"4/&Z_5(XD'7#==Y[>P@][Z%3EN*&_!='N7*XO=(?'#A# M/I-G 3K'6DTN4%9U7RJL;)Q)1Y@F8W_.JE57)1BFCPLLOUF4XL"PG28FP_F@ M>4]DB9] R 1N!T=>LQ_) Z[+WFU8AU5I:8H$\"O=UR3XJR2:$QT7C&V)(_/: M9]+30ZI3E8/3Y&C[%DIX]D^8T4=D03T-ICWKHP1N_9DM=Z9?49N 2J\:L2FI M[F>VZ5E4;BUIJH?35\0Z(5&E\+.VHD,*B/F(=ZY'.L1:6CU#Q:2PL0&T;8$% M2KB/H?#@?#X/K;0F0?2MEE+ 14=H@#,%K+O<:(QRN)UK*>RPBZ[I4CHX =QG M @'JJ(YTK@97GIGW2HN_!57F2;7KA+L\7S*%-1O?L.0"!#,)S)$ERVR].:'Y MIL"<*'9A&]DS*1(BZH*O@W%)-0-Q&'AN;\@?-> &;7S54N&+X?E*R-7T"+"D MLKIRBJ(:02\U5-2X9&2:(R(*"HHKJR1BC;2QY"H>J85D75BS./1!H7_J!1$! M'MIXX4\@3Z4V3SI^O#R1#:2^R?5!U,&%SPT#R20 R*I]HED,!P$73[)$M'!$ M-YBQC )8*:Y,249YI:8.ZI90*>53-\#)HJDQ>E%+%W7@.=1-K1:RLTH)L:>@ M.:#^+2Q8U;=@1C6_JG1841#(RU>(=2#@H5IG+U23/Y]DI$X4.9@=CFXZLRZW:3*-A_(A M!WB^7/U.Q76Z7:?.2UK Z(= 7T_!JIH7RP\;4!FCR9+:QN#//3SMQ]JYLE*N[]USPG-7XMNYE M(@%$8PQ\U<*Y>)WHW"0&]G!ON$2MV\JXW!BZ9FFJCJ(#CJ%*G!?,S-EB7)9H M^9#,?E4ZT_4TTID"QEB%!)LH(+E(1PYFC):)KE1F74LG^3FQ+PL0#Q97+)&C MH/PX5/2+,F=;,N^1R2IYSM.C&)A946BW^Q'&+XAPA4*8$.<4OOU*,C]FCJQ0Q>XL8]MASJNV**M5;?X$%__LC',RK**E>AA24*NI<:C MLJ(0%=@+$KPH-E5DSAFGJE4>CW6I9,["=K0J'M*A M?P$:H@_-*I;UK&*H+Q'X"S=%477VNI=S2&22WPNF>Y";5G$25_0W_6EA$QIS M06A$@8I8EQL,>OSRIK'N#7D:R>N/QC-CFVC]V?)CF]S9(T+FD5QZ!5GO]IHE M[ 1S-=U6JT@W;;(1+'"%.8Y9%DQ=C;L<"AU42RRX9T"^%X<7^FI9Z7-B(#GC M8'"13N"0%#1!^'.2.G+33K>ULQ9^V8:S3TWDKN0:".G)Q07HDKNH_67 M[A99(=$5WS9MZ6;M@H[3-;LN]2]6\;H?\4*W#+6A'G#W[E43BJJB$M=5 M)ZM-.[]7U4BW M'#,):94VE:T4E7GH*.J4/ZDN^8P9T*8] P5DIBTM#-!^57T'&B5*9'.UE80[ MIS8NPJW)SHF!ZPMBDB/< MD+;/[MVKL2OUX2)S>/*>K()^+0R7HIII6_=#SJ9QXKG:Q0@B76M^/MNJ38XL MK=Y@"55(>I8!'I@&'2;5L8?"NPE7B(--R%3<*HV[L;H_CR=PQ4& M+10G=X+L9Z\/V&\QT^J.?&W0TW :OVB&OV^LT?^VYTL&4KZ;QV3_#5[U(,;W M)@75G..P5?Z?/KAX3_(*^V6H 9*":/5_A.'2. 9*F?06J"2!FZCF$=HP;N7M MWZ*BXT&!EXB-_;T768Z2WK4%+J/:3;G8BYR29/!;-I6&.;-C<<[.L(+_9$"9 M)".KA33[R!&XBZJV&I;90J7U@PZ;6A?;)GD,K)-CI45$:D%K% MHBKT[V+2N$8=M)Q 3\LMB04P/;=BLK,1;ML-&BY(3];Q??90A"\71&?F<,&D M+]TS.+B@.JB#Z=7)>2?O^(UC2-8E#J6S+MNAR"="DO,E":F2++MU4&/GR4:JR MIO1(0#=GS3=5$F@[$V_*6NP]?RV[BEGK8);V5G]'_>@-32WL)2^K*H? $$N\ZA MM$_,FVK5..:#*B5WBJ\/5;6U03EP'1,JN=0&ZOUW]VD M9M-L^[/5*7G'8X=6P@;%RC#9J)@;1PIYE)T;JFPPE?-ALFL0"AHA(-S8K]'> M.&I %NWRQ?%<*VVTF^2AB=K&&..TXYXT9WU9X$6+1HA-FNZK)K':T[78"E2U MLC=HTIBG@P*,"I%5UV3\J]4]05^6]KQU1^0/E@II=X7N]LEM-4C60,#=/LE[ M=$4..OV%=9_DOAGM,PU/8^/7OKM7YV$E?C6%:7(*7VO"S$#'=IB![8XEQWXU M-_/X2W7_8N^6$#7PS+<[VQI;H4.5B^/M97[TK^[V_^IN_Z_N]NM_=;?_5W?[ M?W6W_V.ZVV-9#?6=F"*H.*9DF^RKZ[I:5UO!6&ZD(0(UC.Y_Z)P-,WP6N$_P M*X).\LB_X\OG5LD]\)A4FJAKOF6]>:MBH\%QA<%8,12GMU_HS<-!'*J*9<;8 M5Y7(RAO$ N59P>K+<+I>N59O$PL9Q::3/>N"NLPS7ULGHM5W:3'>YXEE3S-W MT=-)1"X>D$941_$LF21.NMVP)4A(1!;>&(C!8,41)*LW-CY*FV:.IE'92D%*%VV:CMDWL(! M]PA18;)R!%&[H?:#I(($J@LG]XSRH>K#B5UO:VS8;?":YZ:_1FME-U1J]Q]#!1EH,"IN,Z [?1HFX< MC25*VBFA/1#F.W?AZ/&'9U;"HQ"^/OL8E]+ M4]8+:6VW#KQORW%U>(MM++) ?A%#G*G/]#[0 MX/?<$8CXA3TW4G\I;%UQ^X+70=C>C'IR1\F9G=C#[>RQF&\Y*>1*(X"HKGM\ MU3Z:,FPI$N^&"?^,W,Y B,#E1"(F! 1*V^E4*JV#Q6 M'.,=(XRJ'+<@W.J#1G MQ#U^TGNL%Q5R#02U4#:./$L.?K"0?P6DZ99[#6)C]U$T",?#,?T<9UDXGL2* MVI-H$@[2-!C%49AD&9'N4Q&D)$CC8#1.PN$HD7#A:)# .%D033*"_G=P=!!, M?A"-0. B]-\P'&:C,!ZD?8BZDFMOW/=JCWR(QEVSOX"R)PGB2!)/A))R,)X96TFQ(#1'&0]BU-+$H)@K3408+3*G3P21, M!L,^RHG"$3X TYB,X+5X;&@C@P^.DB1(1K!AV8!V$42P3AJ$#7NHT3,_'*0A M7LYTE(;)6#55>/+OYSB,Q_#_@W&0A-DP"R>3L317L$$HYO;EA&6F<9@D(R21 M9 1DT8=_S/37<\*[1)-R!?FDSCZW0A>&?R?MI]$X' Y'UD]"]U$X'@W"+!OA M3X,HS.)4$7D&9#&"Y:5QUJ9PV"=A'(=CN#.^Q5@].UKEC#Z?YD,+ ML7C_=@2J]PYH)NWGQG0;,K@#Z2@&35,52BHLZ8^[0M\'H$:' R#;][L^D3G[ ML/>#9BX";VU5;!\,$SJ6][OG!WP)FY#L^.3$/J^=XNW5BO]]J;6# O [^?9@ M/,)..GR.$V(IAGY'L,YX-$:FE,#6PD_"NS/X382]6\9PR$S3\1!N*W#Y..%N M("VR'@+Y#X!3#OCG 5QSN X[5TVVT)KC82S410I^Y3WM@#Q\8-1TAC8X!*5# M:/Q6(!$L$6W!J^.#AY&1]J:DDR( ?C#UPV!RJ,>_M! 44#508_'&6!/IA7#X M7A%EK1>V=3 )AQ,\RCB;@! =F86S3!ZD>&3I$"5L9&\!]F,:#;)@E(Q!'*7[ M;L(06#4VZ!G ^)/1F+HQV7L1@Y0<)4!Z*>*^CQ2A#& F2#S) -X8B\BA!&R2 M06$6I=B]9Q2'*4@D%C!V'I23,PVW';C/D.3E9)B1+=YS1WJ(<)=L4=U!=/KX MA0K"O>G^YL*K=0'RLQIOGT9*%BLV-UG/Z-ZP)P=F6/)1W@7C 6*6DJH"7"^V M$S*M) QYG.0M'-5PC%#,<7"MDHP/AD! &=SV]_#C!+C[$/FG;Q9H!=G?3Q/0 M42(]D8[3% %YOYSM987>V?"'O["'3=&J/IH> W17QRM[6&UHB@?/FTW]1AG: M=@X=*[ IOSQ%90$INE44B:D2EJM(YW^W3&//H.IT#LS8[\TD]!GK!(=%I>J, M^O+ZW6[LJAIN'J [#!7;,\X=A3/;B2&G?$F]&Y(1WC>/^0=M1V9M1Y0 CQG M9OR1>Y ,QR$H^/ON >CY8,+T[@#J&$DR 2'=T3!.RT9A[8N?3+;(1_],]?<% M=DY58#,;E03<'D?5]-V_Z)(%A!QXJ-BSNP?M5>=7*<_#C7% C.8 M,%F*PBM+PA&PJB&R*JMU3A21,3 "&Q.>QAXF6O48@M:2T5] &H"1&8$09*D" M]B68#V!V#"?(_I(81<4@N!4$!C4O+2??D<$"B@PQ+#! MY">C14ZQW\@^7-+"]T*YI3T2JE0*Q[6T4]9![9R>;%5H0]6ZA6NG6SE8^\@,>JNO'W)=AAPH%2 IN/*1^=2FU M&$Q!]3\! 9"#7@4$"88<:#*P]3'8W,-AHI7D,:@V0"BC#,-"$;RQJB+H9'%S2;B U!,L%C!48'.DXH4>F39G#O9EAV 1L8Y3+ M$;!O5'M&>$^""_0A8XMWA*-#A7["797:^,/[^\FUY^.C^^. NFM[=G=[>['[=5 NF2.+5UPC/3Z_0C(X@Q M-M>K1MBQW?VVFTK3 B3KV!^]&AQUPS5W!SO#"#21/6WER%0X$FY[1FJE.0;- M:Q!+1\;Q8$A4RAT9@1"CP5@Z,J+Y#6R+FFB.4FQ#&]OM&8'B@;&-HG%[ SY= M79W^.DL'W"U%$E*5M*=P=F<4T"+G#L@ZIGKK=W+;X?B@EUV M\$,+?9+:AR1H*$2D$P.+1>_D6,A?/P>&+[7NS?"G= 2W&I5AC**J +;&L,3. M@FD: 7,8D.O2@&)*311VSAJ0^P>4YPCDVX 4L'?,,=!-2+VQ!G1CTRCJR/FS MX_TNPR5E'%US7E?[P4LWZ:M_CU47V6 JF>LJY!/<(/E^SMD/NL]1V($&-^DL M.1JG/S#I EFGZ.@49U*,@G[<:;4\2F,\$E /@'F!N&7&Y&;TD1$,TIAXU 2L MSWC8(7%[OSX[R747>JQ3&,M'L$[R'M]@@ZIEVA.O3?*;L]^>"ST"96, ;)XN M]' P(-9-NP+F[X1[KYK.;G2?U3^L^VPZVB$SS]+.HB7L=QM<3W^=$IL%Y@R_ MO/ER=AI@;K3"M7=@IHWM5G6J;L[%RCJW\ MOK?Y4-2GD$& I!YA>^R$U,') "XIT",L%G/T6_V]ARFJK@/T]:.J-AP;>]1^ M4!1X;?SX*[Z7_L MS9.I*$::VYHRRYX"3'G.%"BBO]GDDX,"* #YQ,/IH>>\:1&[TKQ.$=Y\ ZH, M,;_AF%U1M-0!^86&S&U8&41].$S&HS"=C"G<,<1-"'9,#$8"C3T!C2TFTS'" M(!*8"\FN#3G3P7^S&R],*CWST*EC"EM7*BIS47KJVT>I&Y:J=@ M2E/ >LOB C_IW[?O63)]R!H9.,P/_#\@ 1.,' TH<(>!IA'/2H84;#@U0P75 M!U=F- (2S<#@2C-T]9DJUQ_70/>J4I0PT-FXGFCFI(Q@K*"D^6CX>@S;CT#= MG8S0L3R"R:AG5:\I2]4JU4[PG [B#'3U B^"4UGIPS$OKW.&NRL0)OGI69KD'LCWO.W+G5[_5;I&:$KR>J7T4@N" M;PQRF .^!#@>)?K8$C!I$Z!&C!^DH!$Q;8&D ZJ)AVQHL?S>\3'8V2%81,#\ ML(T[LK_(%(%WG_]1[YN>)FA3V7@0'*0)&#F1%>[!YJ3H>@9U#/W!T5CW@M_O M Z"BI(-A<) A-\_TR]]!#?I[^"&IZSFP9&B'"#QE\ 180"!DNNZ1:-2 N<%] M!#4*_<]]E? ^[&!_2J>;+N%"Y@ MTK!W!]Y.YZ=G'\]N;D#_ #=W-M13,#V"=?9,$Q2[( M.>BO<&62"=H$60Q&%^C!UMH^Y>4Z +8S!BTA&J&SQ=HFLR/I<.*;J:-M@2:! M$C(;H?!0,2B'NMJOO ,^@I[$:$2FVP&Z'+,4_M&^H1=GT]L]-3$56KXE )9S M*R7T1AS;=Q5G?WA<%39V2T\V:3O'FH $=UK35ZW460*Z.JP6AUN#!?\N,%FP M;2NM6NS,OD5/1$J=5D%YF+WM71#"Z'4:J#7FHRK[MH_'!;JW<-%J&)U:S:*_1P3-\[2P[4S'C M6GEF!W"GR)7_'FSRM/N2@H5GG2TYRD;]F7Q=F]K0$V_H[PC2X5Y9+5YPHW:1 M0)\O3IO>P,>!V: U1L8W_!/T/&R]3N8W_!,4XP04%;+ )V"<3 816^!)-J#< M-,L"C\AG/,C2'N+4S@$P>&+49R();.O"N8,DPUA"I+6)/X"^Q3GZ&0Y]M5W) M$>A0%Z.(4< >63&0W1NB@\T!?L[22+Q@0[@Q"9#\8'&G(?B'-)P'(?#C+S\(- 2#,]T M&.N7V_/+L]O; *SJX_/+Z=WYU64_-_?!))#6POU1P3C^53K(^LC=8&6J%]QZ MN]_9S/F#HSB.V:2M_M-^\0]L_^Q36K M;\'TJ2Z7NC?T9)C$AZ-T$INNM)@QK/X5G%#MLMNP%HRM3E"0()>MR%^W#^X[ ML/GB42:()WKF%]0I3&K+J!TM&4-4]: F6=Q2S_.&DK3A?_+@YZ)>%S"?:1A\ MN9UB*Z8U-ER?U=4]:K@T!80@) 014 K?H;]W OH5*2WVOEFM?,S7I]L'A%@V MFS2*#B=@,+7VZ!I!/($BEGF),(A_R"X-TR&86I,]MZD]4;"Y)H/$2?[&^2P? MP(X(05$&FMODOW>&8 R.)_L>Y"6FOE(!EG(O4]9YR&GG8?!K"3J1D)G\C)(+ M_B79Z'M,TCEIL%V!N\1[3D_?1+ I^2;2UQHBN%"ZX=Z"+MO<;W$+?RF7^$<\ M[E8@\/LV,XHQ:CELTZ5_MEV@*>=Z6ZS FTS :<)NFR>J<+(YEF%K;^==;7NN M+\.@O<.=N$/3YFS4@ X#FKQ;(%V&F#HVP@MLMXK6%L5D C9%FJ'WX*$$HTT M82C@H*V.##2)U!D6<][ 1,#9&/!J^;AQV(_ 7@0#Q-?^33T4)4DX@OD9BU'] M930!C24=8FMAPA\QX"PZ(BXZNWICC.917PHVZO68>I^.20^R$@0Q& T+4:-, M%73,4X[YYICP"X9B9@(5)_Z$0?7G%-,W0&KKU&O)T55IP]-V $"]>$#F0Y2 MDL06J@^+4C\\QCR*C"-MW6/QH![B$:]R-,BQ<^QN!76[SK?STJT]LG5])V]" M>M':!:,;!U) GQQO&/Y=@^*9"+&3]&K:K&%S#K '%FT,I._1&1[S.8-+UQP) M=ZM/VZEL_D2+[O '7]1NO>=A[%^H7!4,S6+6X3B,,DI(1L_T"#@P/']IP+PH M@CO)X&]#NKV8@ IG.GEKV=NA5=1VW:I)\Y:U!0>GQ28OEUTMT%2(=8.N3K-H M'4G]SPO4$L[14?Z_V^]<>4KEVL]DR=%@T+'#/'5H[4>BP<#W9JYGVA4Z+FN:[MVK3.=EA%:6^GCFY?[-[S!X(_TL0N?9L[E*#A MWSHMGCNUZR/:+4GO1_K6JO.M\1RKFVK\?^8=1GI1_>NK]VL\.7QNBM[SU<_YM[Z^8 M9WN'R_P3>9T&M7JV'^,30K0MD_]7*;Z[7LSZF)7US+CG&3W%701M6*_)&478 M$"#R?P9[37H6M!_QF\>_L,>S'J]Z!XY]VY]:X80-^A";5A\/>91@<%_[L$= _, M_1[?_RQ%W%BCHO"=NL5F%#T&&OS/&TP\^\CAV0XG.-957ZJNI5-=ULF^W54# MUA&1XMSOR'S.Y]__H_M0UMX 6F\221W%Y/4H9X??OA:3Z:MK T/B.RK8]B&B M$T:NMT>@J.*)[E:GJQ6#_YS>-_3(#O+Q5;KUU96\6H-E%2,*A?31U1]0J]MT(?;;U'MHZ/[ZJ$Z=]5X?3L4X)8E=36!=D621XN@@'#_^CJ% M1,>=0J+]:+5<=ZR&;I5,CRDB?O$.%[=J8SI9&'993%>7:%?$]&_ )?(U2@[M M93D4RJ-2H5,K>O":6>LTCO/?X. 8:/81M;SV)^/A4=(U8^/)4=S][:Z*')<[ M_8%&I\=L\_@"O* A73)YS0CJ-7W\R"D>.O2BH[QM(SV$LL,1XT$PZEQ??U64 M>V3?97=X"N0?ZJJ[X+ZJ>Z\QXE6VOT^5WJ% ]V[*F[;_.W3E[SJ=WU6=UL]P M, _"\[M.X1!F17A^U\E(Q:P6#U.3O(F.S:V*Q-RU=KT%_?MOS/:=JJV!YGE- MF=!P+_TGW3MXX2BR.U;[)A+3PY>&UI:>.V97U+6O]AM"4HF484.(M;H@^_F>" M"=ASM'^_/3[AL_'[B4<^_20Y&G-51HLEA7V$O.\/O(=F3/CUS9BX!M![E1O1>=^BL7]Q@)< MW4GMK>1=O\GK5EAV-81V9KJ:Z^FV"'SRYY=V7R3GQ@0'N;341H6YLSJJ&O7/ MTS<[SX;2_E@YJKTR=G)XX?V*GZJ=]%CX[9+)/OUPUS.=8LG.(-/K\[OI17![ M=W7RU[?$FQ),J81C'QEG^I'EG)\D91DK/-+\*TQ1M4LSWJN.NX70&[ MUWV0"E:/367*5E_Y_AM-1;B <>R_@*=VN8IRQ6(U@2XJV.'[Q%*AF57YT]>" ME<:6>DO+V[=XK4ASOU/@!J_:G1ZONNJMB^AU\MB^VZ;?4H3SJ5>]:E,D=K*BCW M8$#Z=DM[XGZ=8C]/[E7G:C_(]_UZL[]]HWHJR7=B]MXJB([.LGN M(LG.)6P727K<3$Z59/>^MDHE?0/T%TMVGD=ZA>KQ=.=J[UU>?/YW?H.+TE7?;DBL* M9Y<2 WR3;/R,K6+[E%.=]XWM4$LNSX7K73QCZKHWU!G[M8== TFKCG6U\:3* MQ\&*\F+;O__;-D?$]^6+2:$W0W=.BOO3[/&D5)ZZEL#K-:8;56/:;PR]K,9T-W> MIHU42W6YQM>C8" I@AVFN'WH_^-?MNL=;S[5_7^T:O(Z.Z)6;NL7N^SL:Z7VM5_'>;KJ\!K/^34-7;63'F =G=L[YS:Q53[$D5_[=C>21!V"5='BK8K MNCQ^)M/BL[_I='L3N@Y35;_L/ *O#NK-ZI;;+LPQ/;9?7 M<6N7<'5%_CZ1VG:EEM^$]%1I]2N2NP_0]"W?206O'K;YWBO#]A']V^+-':C0 MY[8;?$>6KLH4 :KCVL@==\$("?$([/-2WQH[)7%[>62^'-^>_>T+*/@!)M'< M]6\6]N," D75Y^RKAT8_%O>*5<>#GF"@\\RGXVOL#1BEPY^ZTVI];#?OUO4C MN'^:(OMH)/)68[D"(/AGP#,SC_W8-)L__W]02P,$% @ XT1P4'.<'[E6 M @ ? L T !X;"]S='EL97,N>&ULU5;K;M,P%'X5RT5HD]"2M%NGL202 M3)J$!&C2^H-_DYN<))9\"8Y3TKT.;\*38<>YM(4Q* -U?^ISON/SG<^7]#BL M])K!;0&@4<.9J")<:%V^]KPJ*8"3ZD26($PDDXH3;5R5>U6I@*253>+,F_K^ MW..$"AR'HN;77%OFYEOKR!7+CY-5DXM\=7^[B M1VW@&"/'\2Z-<# _Q=[ODY[X_L/$-KA#?O:'Y+_BWJ&>/T+][>L#NS$$?KH= MYY;6Z_8]#C,IQNV?80>8NH0#6A$6X2O"Z%)1FY413MG:P5,+))))A;0Y=Z,K ML$AU[\*!\^R5Z'@X%5*UM5T%][OLIN\$>L\*I(P- J?8 7%8$JU!B6OCM)-; M\(<0ZNS%NC0*2-]D< M]R;M?KRHI"NIW]9F.:+U[<6!&P49;5J_R08!AIV4)5N_8307'-QB'BT8[%DP M#DE?!Q52T7O#9Z]*8@!0&*U :9IL(E\4*1?0Z/XZ-=F^FJ?/4/-3[W,. A1A MFZ+-W3_D7?[/BFUG^6O-[=_*KN(G%#D[/WR-MHL^ Y'SPQEUKW.B_6]UW0-&RIDQ3TN^YI3 & !*-@ #P 'AL+W=O^=/R4 M!1$>Q[&?GNG>RX>\^'J;YU_9MWV:E5>]757=7?3[Y6HG]KS\([\3F7IEDQ=[ M7JG#8MLO[PK!U^5.B&J?]O7S<[N_YS+K?;I\OE=4].%!7HE5)?-,G:Q/W$CQ M4!Y?KP\95Q?XP?JOQ:II4HQKP2DR(_W,EL>]73>FPCB[**ZV]E*6]E*JOO5[WFWZGHJ4_1!Q^C&8?GOX^#>%'\GV',-QNY M$N-\==B+K'HBQE9/\=>/'Z%2@W/D M8L6%5"\4_EJK&2EYLC)/Y5H]?( T@#@33> M$3*N(>HWE"S?,#];Y0#21"#-DT&.\OT=@+002.MTD#N> 4@;@;1/!\G+'8!T M$$B'%C+V)X%_[8_<(&'N:!0N@L0/)BP*I_[(]V( .4 @![20<^_&"Q8>@/F( MP'RDA8GF8>3-DR_,#<;,^WOA1S,O2'YG@9? 8'V.1>MS6D0_2-Q@X@^G'G/C MV$OBG^A0EQ#+9!*&X\_^= IY,'5HQ.[P S6[DG#>GNX:)@J-V!1C;]CZNC ? M:,1"\&;1-/SB>6SH!=ZUG[!HZ@80#O. 1BR"IY 5L\C]XC;S7?THUW5T;>%AL5\C#OY^, IG'DOBO4X<[171S$^:86JF M_RAL'.X%KP2N8T%?)P[Z4_5EMFG0U0)QR!\N8C_PXEB-U6SH!^[KGX".!7^= M./C'BV&L\@KU?;(Z[VE-?ATS@4YL C177.H0$W."3NP$'-. F)@3=&(G/"6U M[$/"U8/+WR 7I@6=6 M(?ENS0DQ,%#JQ*+ISW,[1Q(2A$POC.=GM C,P:QCD M:X27K+>3#9.%02R+.OWMA,*<81 [ TTU6]'/0/>8B.T!,Y3.,<0,8A ;Y#$+ MZ,3"C&$0&Z,S'>BDQ(1A$ L#]YH),3%_&*?<45I:$!/SAT'L#QS3AIB8/PQB M?^"8#MPSQFQB$ML$QQQ 3$PL)K%8<,R/$!-3C4FL&@QSV>PLOF!BJC&I%RHH MI@8QT8+&"9"SIL=PKS)AH6XFU!'$ MQ/QCDU=R6IBO0R?$Q 1DOV/I_SB:"?]6A\X"=F\ZF( <\KI."[/NV^@W<7$"NK$ MO#XH3,%F$BK(P13D$"NHNP!XQH:'4F;MT<04Y! KZ"U,=_7O0<$ S &FH &Q M@M["_#DG'F *&A KZ"U,)7-VG1<0$U/0@+H8]+H=K!T_(2:FH$&CH'YSO3 M?U!+ P04 " #C1'!0^0,DEY(" ".,0 &@ 'AL+U]R96QS+W=O3V5;VI"B1Z71A/&PN&A>&_,#X(%)^^Y4L]GKNV-.>^;-ZNE[;LJF8<^R_& ME'V3KW5YZ/K<3K\O]:G[*1[5;-,)]1/3_-9VY>#KMJ>#G8 M:O.C'DYYW%7F[6)^=<-K:7(>B[E=[,.TP'3+>Y__9_GN>#SO\]=N__.:V_&# MBK\+5.;C(%D.$GJ06PYR]""_'.3I06$Y*-"#=#E(Z4%Q.2C2@])R4*('/2X' M/=*#[!;(N.4G(:SY6EO M>5[;0'8EB^V!61;OMD6H&WY:EO MN6[;0'@O06_AZ"]!;5GC61@_;?+T%Z"U\O07H+7R]!>@M?+T%Z"U\ MO07H+7R]!>@M?+T%Z"U\O1W0V_'U=D!OQ]?; ;W="GLE:+.$K[<#>CN^W@[H M[?AZ.Z"WX^OM@-Z.K[<#>CN^W@[H[?AZ>Z"WY^OM@=Z>K[<'>GN^WA[H[5?8 MZT:;W7R]/=#;\_7V0&_/U]L#O3U?;P_T]GR]/=#;\_4.0._ USL O0-?[P#T M#GR] ] [\/4.0.^PPKM*]+*2KW< >@>^W@'H'?AZ!Z!WX.L=@-Z!K[<"O96O MMP*]E:^W KV5K[<"O96OMP*]E:^W KUUA;,FZ+ )7V\%>BM?;P5Z*U]O!7HK M7^\(](Y\O2/0._+UCD#OR-<[ KTC7^\(](Y\O2/0._+UCD#ON,)90718D*]W M!'I'OMX1Z!WY>B>@=^+KG8#>B:]W GHGOMX)Z)WX>J>9WJ6IAWSX/@[G]E3N M7?+/\$]K9G"7\?V2[Y]QF_KI^C.EQVF5;&Z?=__SWJ;^B3#SBO+\&U!+ P04 M " #C1'!09JE;6RT" Q, $P %M#;VYT96YT7U1Y<&5S72YX;6S- MV]]NFS 4!O!7B;B=@N/_;&IZT^YVJ[2]@ F-AL#*O]F&A,ZS3W**ZO;FGG[ONTNGFZ/K?>%FZ:^JYVJ?,C>QB;5TW7 MSPW+0/VR)K;=%#_E!<7JZS%WB?G:MLC56+ W3'A]XWR>[_O^0"%T#;TKFM_M MNIH:7]\/^98R3H%<$UNB-/1E;%V@YD<*W;A_SGOG0OKFAMR8'7OVSX+R5O0J5%+X>F3?VC@RVZH?:#U%'(UI.[$X^5(=[D:V;SPG(]( M\]9IJ'G3\-SZ!E:/(*E!D%2BR"A19 M!8JL D56@2*K0)%5H,@J4&05*+)*%%DEBJP215:)(JM$D56BR"I19)4HLDH4 M626*K I%5H4BJT*15:'(JE!D52BR*A19%8JL"D56A2*K1I%5H\BJ4635*+)J M%%DUBJP:15:-(JM&D56CR&I09#4HLAH460V*K 9%5H,BJT&1U:#(:E!D-2BR M6A19+8JL%D56BR*K19'5HLAJ462U*+):%%DMBJP5BJP5BJP5BJS5!65=CN7@ MNO%_27YY?WB9SY9_"ES_ 5!+ 0(4 Q0 ( .-$<% ?(\\#P !," + M " 0 !?D !D;V-0&UL M4$L! A0#% @ XT1P4%S!3%WO *P( !$ ( !F0$ M &1O8U!R;W!S+V-O&UL4$L! A0#% @ XT1P4)E&PO=V]R M:W-H965T&UL4$L! A0#% @ XT1P4/,H/K%E! YQ, M !@ ( !L@P 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4(46;81- @ K 8 !@ ( ! M(A@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MXT1P4,7'([BV 0 T@, !@ ( !X", 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ XT1P4$NZ<-2T 0 T@, !D ( !C2L M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MXT1P4#A(0GZU 0 T@, !D ( !3S$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4)P=/$JU 0 MT@, !D ( !$#< 'AL+W=O&PO=V]R:W-H965T8Z !X;"]W;W)K&UL4$L! A0#% @ XT1P4$QMLZ6T 0 T@, !D M ( !T3P 'AL+W=O&PO=V]R:W-H M965TM $ -(# 9 M " :9 !X;"]W;W)K&UL4$L! M A0#% @ XT1P4/AM8Q^W 0 T@, !D ( !D4( 'AL M+W=O&PO=V]R:W-H965TIC)[@$ &8% 9 " M 75' !X;"]W;W)K&UL4$L! A0#% @ XT1P M4 \?[[74 0 G 0 !D ( !FDD 'AL+W=O&PO=V]R:W-H965TR $ #<$ 9 " 9-- !X;"]W;W)K M&UL4$L! A0#% @ XT1P4"L(#QRY 0 T@, M !D ( !DD\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4,7_'P>V 0 T@, !D M ( !;%4 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ XT1P4/&*U;S3 0 G 0 !D ( !A%L 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4#ZC MMKSX 0 -P4 !D ( !*&( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4'+QI;-Z @ <@@ !D M ( !OFD 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ XT1P4+\HP_OA 0 : 0 !D ( ! M0G( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ XT1P4',KT^^S 0 QP, !D ( !V7@ 'AL+W=O@ >&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4'DS+"!@ M P 6@X !D ( !S8 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4%UP?(#B 0 : 0 !D M ( !OXD 'AL+W=O " "*"P &0 @ '8BP >&PO=V]R M:W-H965T^. !X;"]W;W)K&UL M4$L! A0#% @ XT1P4-NI+%3Z 0 904 !D ( !(9$ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MXT1P4*LRP&&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4,;$(3+_ 0 MO04 !D ( !C9\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4*S0P9OO 0 AP4 !D M ( !3Z8 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ XT1P4*!CL G9 0 U 0 !D ( ! :T 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P M4$.]\$3P @ 5 L !D ( !X;0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4.'5C,DB @ Y 4 M !D ( !3+P 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4 TNVRP. @ S@4 !D M ( !ZL( 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ XT1P4#<&KTPC @ .08 !D ( !8,P 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ XT1P4.WM MJTKY< &9H! !0 ( !;=, 'AL+W-H87)E9%-T&UL4$L! A0#% @ XT1P4'.<'[E6 @ ? L T ( ! MF$0! 'AL+W-T>6QEN^YI3 & !*-@ M#P @ $91P$ >&PO=V]R:V)O;VLN>&UL4$L! A0#% @ MXT1P4/D#))>2 @ CC$ !H ( !=DT! 'AL+U]R96QS+W=O M XML 82 R8.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES
12 Months Ended
Dec. 31, 2019
Accounting Policies [Abstract]  
SIGNIFICANT ACCOUNTING POLICIES SIGNIFICANT ACCOUNTING POLICIES
Nature of Business - The Company is based in San Antonio, Texas and sells, distributes, and installs protective films and coatings, including automotive surface and paint protection film, headlight protection, automotive and architectural window films and ceramic coatings.
The Company was incorporated in the state of Nevada, U.S.A. in October 2003 and its registered office is 618 W. Sunset Road, San Antonio, Texas, 78216.
Basis of Presentation - The consolidated financial statements are prepared in conformity with GAAP and include the accounts of the Company and its wholly-owned or majority-owned subsidiaries. The ownership interest of non-controlling participants in subsidiaries that are not wholly-owned is included as a separate component of stockholders’ equity. The non-controlling participants’ share of the net income is included as “Income attributable to noncontrolling interest” on the Consolidated Statements of Income and Comprehensive Income. Intercompany accounts and transactions have been eliminated.
The functional currency for the Company is the United States dollar. The assets and liabilities of each of its foreign subsidiaries are translated into U.S dollars using the exchange rate at the end of the balance sheet date. Revenues and expenses are translated at the average exchange rates for the period. Gains and losses from translations are recognized in foreign currency translation included in accumulated other comprehensive income in the accompanying consolidated balance sheets. Foreign currency exchange gains and losses are recorded in other expense, net in the accompanying consolidated statements of income. The ownership percentages and functional currencies of the entities included in these consolidated financial statements are as follows:
Subsidiaries
 
Functional Currency
 
% Owned by XPEL, Inc.
XPEL, Ltd.
 
UK Pound Sterling
 
85
%
Armourfend CAD, LLC
 
US Dollar
 
100
%
XPEL Canada Corp.
 
Canadian Dollar
 
100
%
XPEL B.V.
 
Euro
 
100
%
XPEL Germany GmbH
 
Euro
 
100
%
XPEL de Mexico S. de R.L. de C.V.
 
Peso
 
100
%
XPEL Acquisition Corp.
 
Canadian Dollar
 
100
%
Protex Canada, Inc.
 
Canadian Dollar
 
100
%
Apogee Corp.
 
New Taiwan Dollar
 
100
%

Segment Reporting - Management has concluded that our chief operating decision maker (“CODM”) is our chief executive officer. The Company’s CODM reviews the entire organization’s consolidated results as a whole on a monthly basis to evaluate performance and make resource allocation decisions. Management views the Company’s operations and manages its business as one operating segment.
Use of Estimates - The preparation of these consolidated financial statements in conformity to U.S. GAAP requires management to make judgments and estimates and form assumptions that affect the reported amounts of assets and liabilities at the date of the consolidated financial statements and reported amounts of revenues and expenses during the reporting period. Estimates and underlying assumptions are reviewed on an ongoing basis. Actual outcomes may differ from these estimates under different assumptions and conditions.
Foreign Currency Translation - The financial statements of subsidiaries located outside of the U.S. are generally measured using the local currency as the functional currency. Assets and liabilities of these subsidiaries are translated at the rates of exchange at the balance sheet date. Income and expense items
are translated at average monthly rates of exchange. The resultant translation adjustments are included in accumulated other comprehensive income, a separate component of stockholders’ equity.
Cash and Cash Equivalents - Cash and cash equivalents consist of cash and highly liquid investments with an original maturity of three months or less at the date of purchase. The balance, at times, may exceed federally insured limits.
Accounts Receivable - Accounts receivable are shown net of an allowance for doubtful accounts of $182,488 and $133,696 as of December 31, 2019 and 2018, respectively. The Company evaluates the adequacy of its allowances by analyzing the aging of receivables, customer financial condition, historical collection experience, the value of any collateral and other economic and industry factors. Actual collections may differ from historical experience, and if economic, business or customer conditions deteriorate significantly, adjustments to these reserves may be required. When the Company becomes aware of factors that indicate a change in a specific customer’s ability to meet its financial obligations, the Company records a specific reserve for credit losses. Accounts receivable from a large customer accounted for 18.8% of the Company’s total accounts receivable balance at December 31, 2019. As of December 31, 2018, there was no significant accounts receivable concentration.
Inventory - Inventory is comprised of film, film-based products and supplies which are valued at lower of cost or net realizable value, with cost determined on a weighted average cost basis. We provide reserves for discontinued and excess inventory based upon historical demand, forecasted usage, estimated customer requirements and product line updates. As of December 31, 2019 and 2018, inventory reserves were $120,826 and $185,056, respectively.
Property, Plant and Equipment - Property and equipment are recorded at cost, except property and equipment acquired in connection with the Company’s business combinations, which are recorded at fair value on the date of acquisition. Expenditures which improve or extend the life of the respective assets are capitalized, whereas expenditures for normal repairs and maintenance are charged to operations as incurred. Depreciation expense is computed using the straight-line method as follows:
Furniture and fixtures
-   5 years
Computer equipment
-   3-4 years
Vehicles
-   5 years
Equipment
-   5-8 years
Leasehold improvements
-   shorter of lease term or estimate useful life
Plotters
-   4 years

The following table presents geographic property, plant and equipment, net by region as of December 31:
 
2019
 
2018
United States
$
2,410,737

 
$
2,288,792

Canada
519,066

 
421,588

Europe
679,112

 
475,345

Other
405,738

 
198,481

Consolidated
$
4,014,653

 
$
3,384,206


Goodwill -  Goodwill represents the excess purchase price over the fair value of tangible net assets acquired in business combinations after amounts have been allocated to intangible assets. Goodwill is not amortized, but is reviewed for impairment during the last quarter of each year, or whenever events occur or
circumstances change that would more likely than not reduce the fair value of a reporting unit below its carrying amount, using a discounted cash flow model and comparable market values of each reporting unit. Goodwill balances are assessed at the subsidiary level. The Company recognized a goodwill impairment loss in connection with the closing of one installation location during the year ended December 31, 2019. Refer to Note 5, Goodwill for more information related to this impairment.
The following table presents geographic Goodwill by region as of December 31:
 
2019
 
2018
United States
$
617,334

 
$
617,334

Canada
1,740,884

 
1,701,826

Other
48,294

 
3,628

Consolidated
$
2,406,512

 
$
2,322,788


Intangible Assets - Intangible assets consist primarily of software, customer relationships, trademarks and non-compete agreements. These assets are amortized on a straight-line basis over the period of time in which their expected benefits will be realized. Indefinite-lived trade names are not amortized but are tested at least annually for impairment.
The following table presents geographic Intangible assets, net by region as of December 31:
 
2019

2018
United States
$
2,074,235

 
$
1,891,479

Canada
1,431,247

 
1,652,347

Europe
81,612

 
1,773

Other
233,366

 
258,427

Consolidated
$
3,820,460

 
$
3,804,026


The following table presents the anticipated useful lives of intangible assets:
Trademarks
 - 10 years
Software
 - 5 years
Trade name
 - 10-15 years
Contractual and customer relationships
 - 9-10 years
Non-compete
 - 3-5 years
Other
 - 10 years

Impairment of Long-Lived Assets - The Company reviews and evaluates long-lived assets for impairment when events or circumstances indicate that the carrying amount of an asset may not be recoverable. When the undiscounted expected future cash flows are not sufficient to recover an asset’s carrying amount, the fair value is compared to the carrying value to determine the impairment loss to be recorded. Long-lived assets to be disposed of are reported at the lower of carrying amount or fair value, less the cost to sell. Fair values are determined by independent appraisals or expected sales prices based upon market participant data developed by third party professionals or by internal licensed real estate professionals. Estimates of future cash flows and expected sales prices are judgments based upon the Company’s experience and knowledge of operations. These estimates project cash flows several years into the future and are affected by changes in the economy, real estate market conditions and inflation.
The Company recognized an intangible asset impairment loss in connection with the closing of one installation location during the year ended December 31, 2019. Refer to Note 4, Intangible Assets, Net for more information related to this impairment. No impairment was recorded during the year ended December 31, 2018.
Revenue Recognition - Our revenue is comprised primarily of product and services sales where we act as principal to the transaction.  All revenue is recognized when the Company satisfies its performance obligation(s) by transferring control/final benefit from the promised product or service to our customer. Due to the nature of our sales contracts, the majority of our revenue is recognized at a point in time. A performance obligation is a contractual promise to transfer a distinct product or service to a customer. A contract’s transaction price is allocated to each distinct performance obligation. Revenue is recorded net of returns and allowances. Sales, value add, and other taxes collected from customers and remitted to governmental authorities are accounted for on a net (excluded from revenues) basis. Shipping and handling costs are accounted for as a fulfillment obligation, on a net basis, and are included in cost of sales. See Note 2, Revenue Recognition, for additional accounting policies and transition disclosures.
Research and Development - Research costs are charged to operations when incurred. Software development costs, including costs associated with developing software patterns, are expensed as incurred unless the Company incurred these expenses in the development of a new product or long-lived asset. Research and development costs were $602,446 and $223,886 in the years ended December 31, 2019 and 2018, respectively.
Advertising costs - Advertising costs are charged to operations when incurred. Advertising costs were $908,585 and $572,218 in the years ended December 31, 2019 and 2018, respectively.
Provisions and Warranties - We provide a warranty on our products. Liability under the warranty policy is based on a review of historical warranty claims. Adjustments are made to the accruals as claims data experience warrant. The following table presents a summary of our warranty liabilities as of December 31, 2019 and 2018:
 
2019
 
2018
Warranty balance at beginning of period
$
70,250

 
$
95,882

Warranties assumed in period
384,214

 
370,502

Payments
(388,873
)
 
(396,134
)
Warranty balance at end of period
$
65,591

 
$
70,250


Income Taxes - Deferred income tax assets and liabilities are computed for differences between the financial statement and tax bases of assets and liabilities that will result in taxable or deductible amounts in the future. Such deferred income tax asset and liability computations are based on enacted tax laws and rates applicable to periods in which the differences are expected to affect taxable income. Valuation allowances are established when necessary to reduce deferred tax assets to the amounts expected to be realized. Income tax expense is the tax payable or refundable for the period plus or minus the change during the period in deferred and other tax assets and liabilities.
Accumulated Other Comprehensive Income (Loss) (“AOCI”) - The Company reports comprehensive income (loss) that includes net income (loss) and other comprehensive income (loss). Other comprehensive income (loss) refers to expenses, gains and losses that are not included in net earnings. These amounts are also presented in the consolidated statements of comprehensive income. As of December 31, 2019 and 2018, respectively, AOCI relates to foreign currency translation adjustments.
Earnings Per Share - Basic earnings per share amounts are calculated by dividing net income for the year attributable to common stockholders by the weighted average number of common shares outstanding
during the year. Diluted earnings per share amounts are calculated by dividing the net income attributable to common stockholders by the weighted average number of shares outstanding during the period plus the weighted average number of shares that would be issued on the conversion of all the dilutive potential ordinary shares into common shares.
Business Combinations - Identifiable assets acquired and liabilities and contingent liabilities assumed in a business combination are measured initially at their fair values at the acquisition date, irrespective of the extent of any non-controlling interest. The excess of the fair value of the consideration transferred including the recognized amount of any non-controlling interest in the acquiree, over the fair value of the Company’s share of the identifiable net assets acquired is recorded as goodwill. Acquisition-related expenses are recognized separately from the business combination and are recognized as general and administrative expense as incurred.
Fair Value - Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. Assets and liabilities measured at fair value are classified using the following hierarchy, which is based upon the transparency of inputs to the valuation as of the measurement date:
Level 1:
Valuation is based on observable inputs such as quoted market prices (unadjusted) for identical assets or liabilities in active markets.
Level 2:
Valuation is based on inputs such as quoted market prices for similar assets or liabilities in active markets or other inputs that are observable for the asset or liability, either directly or indirectly, for substantially the full term of the financial instrument.
Level 3:
Valuation is based upon other unobservable inputs that are significant to the fair value measurement.
In making fair value measurements, observable market data must be used when available. When inputs used to measure fair value fall within different levels of the hierarchy, the level within which the fair value measurement is categorized is based on the lowest level input that is significant to the fair value measurement.
Recently Adopted Accounting Pronouncements
In February 2016, the Financial Accounting Standards Board issued ASU 2016-02, “Leases” (“the new lease standard” or “ASC 842”), which requires an entity to recognize both assets and liabilities arising from financing and operating leases, along with additional qualitative and quantitative disclosures. The new lease standard requirements were effective for annual reporting periods beginning after December 15, 2018, including interim periods within that reporting period. The Company adopted this standard effective January 1, 2019. In adopting this standard, the Company elected the package of practical expedients afforded thereby. This election allowed the Company, among other things, to carry forward prior lease classifications. Pursuant to the adoption of this standard, Right-Of-Use (“ROU”) assets and operating lease liabilities (current and long-term portions) as of December 31, 2019 were $5,079,110 and $5,136,650, respectively. Refer to Note 15 for additional information related to the adoption of this standard.
Recent Accounting Pronouncements Issued and Not Yet Adopted
In June 2016, the FASB issued ASU 2016-13, “Financial Instruments — Measurement of Credit Losses on Financial Instruments”, which requires measurement and recognition of expected credit losses for financial assets held. As a smaller reporting company, ASU 2016-13 is effective for the Company beginning January 1, 2023 and is required to be applied prospectively. We are currently evaluating the impact that ASU 2016-13 will have on our consolidated financial statements.

XML 83 R20.htm IDEA: XBRL DOCUMENT v3.20.1
INCOME TAXES
12 Months Ended
Dec. 31, 2019
Income Tax Disclosure [Abstract]  
INCOME TAXES INCOME TAXES
Income before income taxes classified by source of income was as follows:
 
2019

2018
Domestic
$
15,375,731

 
$
10,008,013

International
1,574,697

 
1,473,292

Income before income taxes
$
16,950,428

 
$
11,481,305


The Tax Cuts and Jobs Act (the “Tax Act”), enacted on December 22, 2017, reduced the U.S. federal corporate tax rate from 35 percent to 21 percent. The amount recorded in 2018 related to the remeasurement of the Company’s deferred tax balance was $0.1 million.
In January 2018, the FASB released guidance on the accounting for tax on the global intangible low-taxed income ("GILTI") provisions of the Tax Act. The GILTI provisions impose a tax on foreign income in excess of a deemed return on tangible assets of foreign corporations. The guidance indicates that either accounting for deferred taxes related to GILTI inclusions or treating any taxes on GILTI inclusions as period cost are both acceptable methods subject to an accounting policy election. For the years ended December 31, 2019 and 2018, the Company has elected to treat any potential GILTI inclusions as a period cost.
The Tax Act also provided for a deduction to incent US corporations to provide goods and services to foreign customers known as foreign derived intangible income (“FDII”). Due to a lack of clarity regarding the calculation of FDII, the treasury department issued proposed regulations in March 2019 that included rules for determining various factors of the FDII calculation. After a public hearing on the proposed regulation in July 2019, the Treasury Department issued new documentation guidance on FDII in September 2019. Subsequent to the issuance of this additional guidance, the Company filed its 2018 corporate income tax return which included a FDII deduction yielding a tax benefit of approximately $.2 million. This 2018 tax benefit was included as a return to provision adjustment in calculation of the Company’s 2019 income tax expense.
Income Tax Expense
The provision for income taxes differs from the United States federal statutory rate as follows:
 
2019

2018
Income before income taxes
$
16,950,428

 
$
11,481,305

Statutory rate
21
%
 
21
%
 
3,559,590

 
2,411,074

 

 


State taxes net of federal benefit
31,446

 
183,468

Nondeductible/nontaxable items
115,679

 

Foreign tax rate differential
45,994

 
81,474

Foreign derived intangible income benefit
(287,606
)
 

Return to provision estimated revision
(358,986
)
 

Other - net
(150,761
)
 
84,057

Income tax expense
$
2,955,356

 
$
2,760,073


The foreign tax rate differential reflects the impact of the differences in our various international tax rates and our US statutory rate.
The components of the income tax provision (benefit) are as follows:
 
Years ended December 31
 
2019

2018
Current Income Tax Expense
 
 
 
Federal
$
2,412,157

 
$
2,182,415

Foreign
518,528

 
431,638

State
3,068

 
232,238

Total Current Income Tax Expense
2,933,753

 
2,846,291

Deferred Income Tax Expense/(Benefit)

 

Federal
99,870

 
(65,801
)
Foreign
(78,267
)
 
(20,417
)
Total Deferred Income Tax Expense/(Benefit)
21,603

 
(86,218
)
Total
$
2,955,356

 
$
2,760,073


Deferred income taxes reflect the net tax effects of temporary differences between the carrying amount of assets and liabilities for financial reporting purposes and the amounts used for income tax purposes. Significant components of the Company’s net deferred income taxes are as follows:
 
Years ended December 31
 
2019

2018
DEFERRED TAX ASSETS:
 
 
 
Allowance for Doubtful Accounts
$
31,073

 
$
161

263(A) Adjustment
31,427

 
17,421

Accrued Expenses
212

 
9,485

Inventory Reserve
9,725

 
34,978

Accretion of Acquisition Notes

 
8,156

Unrealized loss
6,282

 

State Tax Credit
27,867

 
48,770

NOL Carryforward and Other
162,005

 
249,772

Total deferred tax assets
268,591

 
368,743

 

 

DEFERRED TAX LIABILITIES:

 

Fixed and Intangible Assets
$
860,592

 
$
824,822

Unrealized Gain
12,713

 
14,146

Accretion

 
8,639

Total deferred tax liabilities
873,305

 
847,607

Total net deferred tax liabilities
$
(604,714
)
 
$
(478,864
)

In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion or all of the deferred tax assets will not be realized. The Company regularly assesses the likelihood that the deferred tax assets will be recovered from future taxable income. The Company considers projected future taxable income and ongoing tax planning strategies, then records a valuation allowance, if deemed necessary, to reduce the carrying value of the net deferred taxes to an amount that is more likely than not able to be realized. Based upon the Company’s assessment of all available evidence, including the previous two years of taxable income and loss after permanent items, estimates of future profitability, and the Company’s overall prospects of future business, the Company determined that it is more likely than not that the Company will realize all of its deferred tax assets in the future. The Company will continue to assess the potential realization of deferred tax assets on an annual basis, or an interim basis if circumstances warrant. If the Company’s actual results and updated projections vary significantly from the projections used as basis for this determination, the Company may need to change the valuation allowance against the gross deferred tax assets.
The Company, through XPEL Ltd., has net operating losses of approximately $841,003 available to apply against future taxable income. These losses have no expiration date.
Uncertain Tax Positions
The Company recognizes the tax effects of an uncertain tax position only if it is more likely than not to be sustained based solely upon its technical merits at the reporting date. Interest and penalties associated with unrecognized tax benefits are recorded within income tax expense. The unrecognized tax benefit is the difference between the tax benefit recognized and the tax benefit claimed on the Company’s income tax return. The Company has reviewed its prior year returns and believes that all material tax positions in the current and prior years have been analyzed and properly accounted for and that the risk that additional material uncertain tax positions have not been identified is remote.
Goodwill and other intangibles acquired in taxable asset purchases are amortized for tax purposes over allowable periods as prescribed by applicable regulatory jurisdictions.
The Company is subject to income taxes in the U.S. federal jurisdiction, and various states and foreign jurisdictions. Tax regulations within each jurisdiction are subject to the interpretation of the related tax laws and regulations and require significant judgment to apply. The Company is still subject to U.S. federal, state and local, or non-U.S. income tax examinations by tax authorities for the years 2012 and after. There are no ongoing or pending IRS, state or foreign examinations.
XML 84 R24.htm IDEA: XBRL DOCUMENT v3.20.1
SUBSEQUENT EVENTS
12 Months Ended
Dec. 31, 2019
Subsequent Events [Abstract]  
Subsequent Events SUBSEQUENT EVENTS.
Business combinations completed after year-end - On February 1, 2020 the Company purchased the shares of Protex Centre, a previously independent paint protection installation shop based in Montreal, Quebec, Canada. In this acquisition, the Company acquired 100% of the shares of Protex Centre. This acquisition was completed in order to expand the Company’s direct penetration in the greater Quebec market. The Company funded this purchase with cash of CAD 2,000,000 and unsecured promissory notes issued to the sellers with a combined total face value of CAD 1,250,000.
The allocation of the purchase price has not yet been finalized as there was insufficient time between the closing of the purchase and the release of this Annual Report.
Buy-out of minority interest - On February 1, 2020, the Company purchased the remaining 15% minority interest of XPEL Ltd., the subsidiary of the Company operating in the United Kingdom. The purchase price of this minority interest was GBP 600,000.
XML 85 R28.htm IDEA: XBRL DOCUMENT v3.20.1
PROPERTY AND EQUIPMENT, NET (Tables)
12 Months Ended
Dec. 31, 2019
Property, Plant and Equipment [Abstract]  
Schedules of Property, Plant and Equipment Depreciation expense is computed using the straight-line method as follows:
Furniture and fixtures
-   5 years
Computer equipment
-   3-4 years
Vehicles
-   5 years
Equipment
-   5-8 years
Leasehold improvements
-   shorter of lease term or estimate useful life
Plotters
-   4 years

The following table presents geographic property, plant and equipment, net by region as of December 31:
 
2019
 
2018
United States
$
2,410,737

 
$
2,288,792

Canada
519,066

 
421,588

Europe
679,112

 
475,345

Other
405,738

 
198,481

Consolidated
$
4,014,653

 
$
3,384,206


Property and equipment consists of the following:
 
December 31, 2019
 
December 31, 2018
Furniture and fixtures
$
1,168,894

 
$
956,467

Computer equipment
1,151,295

 
939,979

Vehicles
683,213

 
730,765

Equipment
1,648,656

 
1,079,503

Leasehold improvements
1,479,594

 
941,627

Plotters
839,455

 
544,080

Construction in Progress
306,100

 
646,576

Total property and equipment
7,277,207

 
5,838,997

Less: accumulated depreciation
3,262,554

 
2,454,791

Property and equipment, net
$
4,014,653

 
$
3,384,206


XML 86 R49.htm IDEA: XBRL DOCUMENT v3.20.1
REVENUE - Schedule of Transactions Within Contract Liabilities (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Change in Contract with Customer, Liability [Abstract]    
Beginning contract liabilities $ 136,213 $ 1,701,356
Revenue recognized related to payments in beginning balance (115,670) (1,701,356)
Payments received for which performance obligations have not been satisfied 537,683 136,213
Effect of Foreign Currency Translation 1,006 0
Ending contract liabilities $ 559,232 $ 136,213
XML 87 R45.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Research and Development (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Accounting Policies [Abstract]    
Research and development expense $ 602,446 $ 223,886
XML 89 R41.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Property, Plant and Equipment (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Property, Plant and Equipment [Line Items]    
Property and equipment, net $ 4,014,653 $ 3,384,206
United States    
Property, Plant and Equipment [Line Items]    
Property and equipment, net 2,410,737 2,288,792
Canada    
Property, Plant and Equipment [Line Items]    
Property and equipment, net 519,066 421,588
Europe    
Property, Plant and Equipment [Line Items]    
Property and equipment, net 679,112 475,345
Other    
Property, Plant and Equipment [Line Items]    
Property and equipment, net $ 405,738 $ 198,481
Furniture and fixtures    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 5 years  
Vehicles    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 5 years  
Plotters    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 4 years  
Minimum | Computer equipment    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 3 years  
Minimum | Equipment    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 5 years  
Maximum | Computer equipment    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 4 years  
Maximum | Equipment    
Property, Plant and Equipment [Line Items]    
Property, plant and equipment useful life 8 years  
XML 90 R62.htm IDEA: XBRL DOCUMENT v3.20.1
DEBT - Schedule of Notes Payable (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Debt Instrument [Line Items]    
Current portion $ 462,226 $ 853,150
Total long-term debt $ 307,281 968,237
Acquisition Notes Payable Due 2022    
Debt Instrument [Line Items]    
Weighted average interest rate (as a percent) 5.76%  
Total debt $ 769,507 $ 1,821,387
XML 91 R66.htm IDEA: XBRL DOCUMENT v3.20.1
CAPITAL STOCK - Narrative (Details) - USD ($)
Dec. 31, 2019
Dec. 31, 2018
Equity [Abstract]    
Common stock shares issued (in shares) 27,612,597 27,612,597
Common stock shares outstanding (in shares) 27,612,597 27,612,597
Common stock value issued $ 27,613 $ 27,613
Common stock value outstanding $ 27,613 $ 27,613
XML 92 R50.htm IDEA: XBRL DOCUMENT v3.20.1
REVENUE - Disaggregation of Revenue (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Disaggregation of Revenue [Line Items]    
Total revenue $ 129,932,881 $ 109,920,614
Product revenue    
Disaggregation of Revenue [Line Items]    
Total revenue 112,204,739 95,526,350
Paint protection film    
Disaggregation of Revenue [Line Items]    
Total revenue 97,341,865 85,495,382
Window film    
Disaggregation of Revenue [Line Items]    
Total revenue 11,384,437 7,309,773
Other    
Disaggregation of Revenue [Line Items]    
Total revenue 3,478,437 2,721,195
Service revenue    
Disaggregation of Revenue [Line Items]    
Total revenue 17,728,142 14,394,264
Software    
Disaggregation of Revenue [Line Items]    
Total revenue 3,263,391 2,566,960
Cutbank credits    
Disaggregation of Revenue [Line Items]    
Total revenue 7,253,610 6,197,250
Installation labor    
Disaggregation of Revenue [Line Items]    
Total revenue 6,620,527 5,211,633
Training    
Disaggregation of Revenue [Line Items]    
Total revenue $ 590,614 $ 418,421
XML 93 R54.htm IDEA: XBRL DOCUMENT v3.20.1
PROPERTY AND EQUIPMENT, NET - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Property, Plant and Equipment [Abstract]    
Depreciation expense $ 915,918 $ 735,983
XML 94 R58.htm IDEA: XBRL DOCUMENT v3.20.1
GOODWILL - Schedule of Goodwill (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Goodwill [Roll Forward]    
Goodwill beginning balance $ 2,322,788 $ 1,856,642
Additions 44,584 576,173
Foreign currency translation 75,024 (110,027)
Impairment (35,884) 0
Goodwill ending balance $ 2,406,512 $ 2,322,788
XML 95 R77.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES - Schedule of Maturities of Operating Lease Liabilities (Details)
Dec. 31, 2019
USD ($)
Leases [Abstract]  
2020 $ 1,060,213
2021 1,084,622
2022 1,011,538
2023 908,901
2024 580,481
Thereafter 1,077,086
Total operating lease payments 5,722,841
Less: interest (586,191)
Total operating lease liabilities $ 5,136,650
XML 96 R83.htm IDEA: XBRL DOCUMENT v3.20.1
SUBSEQUENT EVENTS - Narrative (Details) - Subsequent Event
Feb. 01, 2020
CAD ($)
Feb. 01, 2020
GBP (£)
Protex Canada, Inc.    
Subsequent Event [Line Items]    
Percentage of business acquired 100.00% 100.00%
Cash $ 2,000,000  
Promissory note $ 1,250,000  
XPEL, Ltd.    
Subsequent Event [Line Items]    
Percentage of business acquired 15.00% 15.00%
Purchase price | £   £ 600,000
XML 97 R73.htm IDEA: XBRL DOCUMENT v3.20.1
COMMITMENTS AND CONTINGENCIES - Narrative (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Mar. 31, 2017
Commitments and Contingencies Disclosure [Abstract]    
Purchase commitment renewal period 2 years  
Purchase commitment renewal option notice 2 months  
Quarterly purchase commitment   $ 5,000,000
Annual purchase commitment   $ 20,000,000
XML 99 R12.htm IDEA: XBRL DOCUMENT v3.20.1
GOODWILL
12 Months Ended
Dec. 31, 2019
Goodwill and Intangible Assets Disclosure [Abstract]  
GOODWILL GOODWILL
The following table summarizes changes in the carrying amounts of goodwill for the years ended December 31, 2019 and 2018:
Balance at December 31, 2017
$
1,856,642

Additions
576,173

Foreign currency translation
(110,027
)
Balance at December 31, 2018
$
2,322,788

 
 
Balance at December 31, 2018
$
2,322,788

Additions
44,584

Impairment
(35,884
)
Foreign currency translation
75,024

Balance at December 31, 2019
$
2,406,512


During the year ended December 31, 2019, the Company’s wholly-owned subsidiary, Protex Canada, sold a franchise territory to a new franchisee in Quebec. In connection with this arrangement, the Company closed its Quebec City installation location and recorded an impairment against all previously recognized intangible assets for that location. The Company recorded an impairment loss of $35,884 related to the Goodwill associated with this closed location. This impairment loss is reflected in general and administrative expense on the consolidated statement of income. No impairment was recorded during the year ended December 31, 2018.
XML 100 R16.htm IDEA: XBRL DOCUMENT v3.20.1
ACCOUNTS PAYABLE AND ACCRUED LIABILITIES
12 Months Ended
Dec. 31, 2019
Accounts Payable and Accrued Liabilities [Abstract]  
ACCOUNTS PAYABLE AND ACCRUED LIABILITIES ACCOUNTS PAYABLE AND ACCRUED LIABILITIES
The following table presents significant accounts payable and accrued liability balances as of the periods ending:
 
December 31, 2019
 
December 31, 2018
Trade payables
$
7,440,965

 
$
3,905,187

Payroll liabilities
1,367,340

 
1,194,237

Contract liabilities
559,232

 
136,213

Other liabilities
829,816

 
1,056,456

 
$
10,197,353

 
$
6,292,093


XML 101 R39.htm IDEA: XBRL DOCUMENT v3.20.1
SIGNIFICANT ACCOUNTING POLICIES - Accounts Receivable (Details) - USD ($)
12 Months Ended
Dec. 31, 2019
Dec. 31, 2018
Disaggregation of Revenue [Line Items]    
Accounts receivable, net of allowance for doubtful accounts $ 182,488 $ 133,696
Accounts Receivable | Customer Concentration Risk | Largest Customer    
Disaggregation of Revenue [Line Items]    
Concentration risk percentage 18.80%  
ZIP 102 0001767258-20-000011-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001767258-20-000011-xbrl.zip M4$L#!!0 ( .-$<%!K>-G3Z , '$X 7 83(P,3DQ,"UK97AH:6)I M=#(Q,2YH=&WM6VUOVCH4_MS^"H^I]]/R6D!=2)$8H&WWLA:U]';[Z,2&6'/L M7,I?=T9=A'T0RIF!X\V[P ML0MJAF7=GG8MJS?J@0^C3P-0-VT'C 1D*9&$,T@MJW]1 [5(RL2SK"S+S.S4 MY&)BC:ZL?*JZ13E/L8DDJK6/_;RI?7SD1Q@B]7ODOS(,T./A-,9,@E!@*#$" MTY2P";A%./T*'& 8]SV[/)D+,HDD<&W7!K=U3UH)1$A5;01<2AY[3C.9M22>20-2,F%>4?7CG/R\ M95,UA$58D$K\5UGIVI\T2F>Y#4@*02\#&XG@8I000*@M,7)UGP;R6$NTAJ M989R0)Z^9YU^Q:8:<) M#$O[^3=L1I",O+>.6;>;;N.D%7"!L#!"3BE,4NR5?QY!D>>DX)4(J"XJ!W9> M:^3WLD3Y1=Q[ERDMXM15A++30Y_SM.MTB\_=XEH9MB&E.RPD"2%=5K6 M%R M$N!D!E)."0*O[>+36@,TY^@J6JOVA@G^]=IIVZP7U_69\0W7?8[$+A/^>"I(B M$N8[C%S0+L4$,O(-YK;&_<_%_3)C6*01238LPO]6N8JHV.=A?P ^LM#4A/[5 M$.Z.L!?X#B+X!MQ<=_:D3 WC"V <0J'F.A31&4BD1:?";+TQ_]'X51B_L\;) M 4A-1\1\*L:8H6ZG]P8,!EU-V@J35N]T_@@8'=L^!/$I]CE=R!1E09>+1$M/ MA3F[P'%/*M0(:M79JCKOS'^UVE28JQ=8*@^%#*5[4J:&44O.5LEYCT4,V1R\ MCX,/>X*IYNP+P%SBN"[&#!-YY'>G!F MZC[OF$3H(3&M'S 6-*1SI'V M>-J-@98Y>AU&[N. M7K]J)YPR^/^J_5.M1DYTE*=<.1(93AUG)+="C<@7QNT5"4FM-I?LZFQJQ"AQ MI%%OU,D7;:[$F,XDG'"2'_6N$S$4KAT435 6E-K:0\VF1VTFQL2ZJ>0?*K%6 MKA;35,AI:R!2;LD9GY!+G5)UZ,>L^(NWPGKF#M%ZF'G4ID31%.;:WO%)L]Y\ M$W;VCX\/PN.33J?WKO,^;/:ZO>.W8>-CY:@=4/CSLV8?,\U2*%Y+..ZE%3;J MOZRK:V//)D.%2K@1;L.,H0%UV#W3NJ3;C]UIA>/7KD:E&*F6/^\?:A5. M\*U)H6"H)8,5>E\_]8_[ ](,]\)5:^]IF.3QH^VJ'/WZ<_BF?OBW#(@ J]P\ MP=%T>Y>#_L=^MS/HGY\!"2\__]XY&Y#!.?GI]KYU]/>W^03G> (XUZO?$\#_;[&-"ODLLI5>1TCUS0C%=)Q(T3\92X MA+K6?_ED3L"[M@HK?J,F2DCXINH]Z0^T:=UI.3J4'!Z:E!EE#"+!ATJ]XMLV MH]&L?0\/3M8]I -ECLTF3P1S26O_77:-8X%C.%A^";SHBO@8<1116>[?Z:SR M()]>;J>&!]=J[!=:'^SEP[T;/KXP^W8C#^^P\O9'^O!(5#*0)'3,B>%CP2<0 MSUTB+.DHE5-)+GFFC2-:D8_:I"2LU_Y'=$R^7O1.JZ2OHKW##=OS#R/PP'C! MQQWX:&P_/HZI!50 !-(IN5)Z(CD;@9_V,#$%/IB&1Z4TY(0PEPI%J)J27#F3 M<] $?LPGC <2E)H&0'0BFD$78;H5#CB="&W)J!XQ*VE9HHB*;WBH'=I30M] M#(P!E=)GFJ #!2)A($L%,073P1+ DD IRHS?%C,7_"#2\7P0VDPDK(/S&C MG0B7P 9MQB-O(*Z;@6F:P3;AP<"A#*?+Q_#"A<=QH?F,NR1S!FL"@I>@5 7T"R.G) , (G>04U(NR%'BTMY0 M#?QCOM:KHD0N00 8H0&V7IWU]D34)B26>F)G=#%\)*R#0M$1BIV%W6!E=0GU M=F;,FK4OP'\<\/>W'_B#%93\^O.[1OCVT);0+E-V=)HZC@4T/7[ZA!KND0K( M$X@ 0!3A%M$@;(+B*)9"P,"@@6TF;"2US6$>AA*C90'9S.B(,^BV9 <0RCA MOH!A[SI*J!IQT@$O?9E+D B;M!8>[/!=/S4\8$6K: JL!E5!%5R?H"M?8E"! M:+3EWHKB%44Q*,)]WN052&">U=HVKKQM_ BNS!CZ8*[0[><*XQ96 ]3X7.-N M2%77P6IZ$3V6(Y#ADGJ\ MERG. K/5,CKAH(!( K98+07SMWXV'UK!!#4"-R"*1,S'1(4KY1:3(^\>K,^D M?,30EH-!#B(43LHH/JM<4@QTL"UOQ"+)@AE%RK:<:<*W(4=!B$4PG[.MBSW/ MC$_#Y\:G>SOP-5K=W_7?FUW R+%@2!IJM?)(HQ8(AW4',HD:-D,U\$S0H9#" M33'MVJ06.>X)X+%=T'-%=*EN\:'TNMQ0EIL,N&5]FAA%VC!O@*]@1EQ!]B>! M8C#",^0NBD!U5M (."XRB&8O1'H<-3(1(8HL29*AS=[L%]XF7="[-L;Z*[Z[-R7!6N7E74)X$ MV'.(B[] _U'09]L/_1)5Z^C$FZHRL?9:.HMP@!I>2F@VKIMHZ MZ,^TLVO'_SU[>%7;N%50FU M\PP0HX$G'V<^3/KS*$/8E$AQQ65YXW9#OOKH(]I*PCVS"X.#[2?]KF*_,7<[LN]P+_^7@ O<+&B M$(!XO!+"RZ5(<(!HF4+-Z_,)IU>8$Q49O<^*?"WB?R^97>8^"/AE*5U9U%,. MHY-$%Q&"KO (;1W.E9AW_/K>@I6/L^W*N'!V\:![\< M#L$=<5.+M)0TL[PU^[+V;!8. $3 3O6ATJC)]SL(S?GSXIA$/,Q MJ>5O^1#VL%1@@Y77TFZEX:,/^)_1^:1SG>OI#S(@=_ M.O4[%\4U(WC;-:V[=WG=&R_';J\'?BJ%-UX'_E%O)K^:-?R+V:_;_HWQH_\# M4$L#!!0 ( .-$<%#<4T@O4 @ "(Q 7 83(P,3DQ,"UK97AH:6)I M=#,Q,BYH=&WM6VU3(KD6_CSS*[)L[996@=#X,@XR5B%BC75GU5+VSNS'T$G3 M*=,=-DF#[*^_YR0--"^...HN[O6#2M))SLGIYSDO(39_.KUL=_^XZI#8)I)< M_7[RY;Q-2I5J]>MNNUH][9Z2S]W?OI"]G5I NIJF1EBA4BJKU- M:G4T&NV,=G>4[E>[UU5<:J\JE3)\AUE6.G[?Q*[C]^^:,:<,_KYK_E2ID%,5 M9@E/+0DUIY8SDAF1]LE7QLTM"4BE,AW95H.Q%OW8DGJM7B-?E;X50SH98865 M_+AS%XN>L,VJ;X*P:BZMV5-L?-QD8DB,'4O^J12IU%8BF@@Y;G1%P@VYX"-R MK1*:'KEG1OS%&T%M8(]0>YAYW*0DI0G,-0=G^WO!Q\/=LU:MME\+3D^"VD%K M]_#P8/?@0W!R<%HZ;E8I_+A9DU\3R5*DO!)SW$LCJ-=^61;7Q)Y5BHHTYEK8 M%3-Z&L1A]T1J0;9[]J 6EM_9"I6BGS:K%?I^->?@X/:T0\I$ )6N7X!T[0[U]WSL_-VJWM^ M>0$DO+[YO771)=U+=F\KEMR^=/TBK MW<4G]5KMQPS[//M:A([2196$6A%DVF3P2S,:-O4/8&48QR_!A_J'JALX- M'R*\0RIS"U@U*#TJV$TLBJ9KU/>\U$<;+-A9"'Y>[?N5/'I R^=\J;EG(#$= M^YE5!TPWO#Q #[JFX^/$VH %0"!9$QN4S62G/5YV<-$>WPP!:\J59 LPUPJ M4D+3,"[2")PIQ5H5/HP&J#&Y1H/0[J,:5!(,[/^%,Q'>IQ,)?D,1V4:%@!O/13&Q0 8Q5.W#A;Y ML^A1C$":2^KPGJAP' M0BR"^9QM7.QY97SJO38^K>W EVBUONM?FUW R*%@2!IJ5.J01@T0#NL.9!+5 M;()JX)F@/2&%'6/:M4HL1J1P\XG$AU1FSGLCRG@4 M004AAH /LZ(2F.9X:T0CWUQ='#C>P$2(),:7(#V5V?LU6"=>TNEHCO55]'!M M3GJ3RLVY@MP2H,\1+OX&_2=!GVT^]'-4+:,33ZKRQ-X]64F!1T0.S+-4&&8: M,5A(:E:LFBACH1^_X8*U#%B(_)E!3@1+;]TS)0(R@4]?&)TK#G4]=X=L>/[F MCF^]7MM>JYB::0:(T<"1CS,7)IT]\A V)E+<?"^ !+E84 A"/1T)XN!0*#A#-4ZAI?3[B]!9S(I_1NZS(U2+N^Y+)8>ZC M@)^7TOY ;H6CIPPF&C[U\_>2)*]@8 H@'0J-LD_,#&1E)DL2JF&_;C-Y?%UY M[+V1,>"5 ?X5%.Z86T4:W&@9X,>=YP< NZ_9% M.@\6/!E(->;P=!0K'R'H'(\ ]\^2O*TRZ!PB'V.]Y4#_%'L^\SV5_T,%[KM' M5I@^]\JF%VA$RF"J:Q?73]&7R>EK!G[Y2S>E9W1<"[L'Y]H7J5>/9E9-.MRE M2-_C/=G'8*<6[!_4]W\YZH&+YKH2*BGIP/#&Y,/2NYDY11@">J:?2O72_3[0 M"]H'&Y>67,_RLX>=J+^WM, :,&?1OL5V?L^IV.7-D#OQPFM]F>M:A'SOJM;W MG?$+;O:)FW.V8AC879QNN)-/A#TL5375^2N$#US<>[*=YX2]G)@;G@H(-O^% M,H1<:1CCEM8HG.K*VW[ER&FUXW9->0Z@VG+RL+*71M M06+&-VV?Q32%2[J"J8R)Z.2RE/U%VXZ=Z(Y!CYJ]+@%!8M1-3^V6>]H8#!J. MUV\T3^S!^>G)R&UZ ]MK.6>GS4JO:Q'\R[7*C](S9X+6(FK.TG9<^_E]=UVS MLP\H$Q%53._1F"MT9[9+KSN^<]F_HM!TK6N$LZ5HYW%^/*Q\N2I%.?U8=U<(X;]J^&[G#F#?,(MNPF3,[!?^7!K#\=]"^] M66WR[L)[#_VA;R2N;;M'_UTJ_IFEFBTVQ183(6)JGYPEZV\!:UR%Z88(N*C# M%4EH%:X439EQ 42$,(P878"WID&FV36%R6+! JI +N#=E7=1A;$(ZG"H(PHO MGIVY[LT)OQ!)?K:0!E(1\\O3SO"8R@3%U(N,$R(V7VG9A!Z1.9VC*B!T$\DJ M))E*,X)VM(09#8S+G$9X+G.6&5%S(FA:FZPYW4 _T$9B:%2%FZ(H%4UQ5%&/ MZ*JQ%V_@@Y K3L,E;3\JX;\O[0Z=HSS0?2$RPF%*$ZDPQ@+.I8K!L6M_E*G8 M)A\64N7K!4L#U-A0HH BJ!!&-*#Q'$EY[%0Q1T[K>_.Q0/MH.L(BXWP# 1Z0 M,[R;K)B.\B,J^C%CBIH[4VK"<,.S0W($& >G<1@>?>(JUB;Z,1:\=1 1L:0E M89W6\0D<.HV2L*=G\=;"Z9E$$T<=4^3_4W0_1=V"HDP@]>*IY)3?= [L M^0G.*GE ]S?Q/ EH2$A=&F/8QH&DD!"ERTR4W4H9 8&4HM! "+$U<9EF"K]N M9YZ?GJW[0\/7WGQ:A;T=]82$(0:IQNE"MVVLNMTR-.M=^\(4$>^4.EHF!N+: MF-1DSBDFD_.M]&7%KN3K-"%!N?[RF2XF:LE$ 8]D6I8;^>A3[*Q8J*-VR\&Y MM]%T&\\[$Z_O)M,_NNGC^UE81!K?(P4Y: M[Y[T'@4>3L)"883%T09X3500@=.LYM/]G4GV=D1^W&$?>;C/71.LU+IUM_[' M,GQT@'^,EP=-!GO2FI/9RHO\WHN+7[H;?B^'=][6_*P71T_*1?[>[*";O]#K M_0U02P,$% @ XT1P4-:E0?G6! -1, !< !A,C Q.3$P+6ME>&AI M8FET,S(R+FAT;>U8;7/:.!#^W/R*+9UVDAF,7X"$ &4&")DREX8,N)?VH[!E MK*LL^62YA/OUM[)Q2A*NUS:=MM>Y#R%(J]U]M,\C(:G_]&PV]M]=32#6"8>K M-Z.+Z1AJEFU?-\>V?>:?P2O_]06T&HX+OB(B8YI)0;AM3RYK4(NU3KNVO5ZO M&^MF0ZJ5[<]M$ZIE.9;I1;!5K\!S/@6NIWK,/I!JAF>9T,+F)V9+I MOETV,9F]S=9?RG SZ(?L V1ZP^G+6B2%MB*2,+[I^BRA&5S2-OIJ.I#TVOX=W%^YG0 A0+5=^B M9"^>N<=.[X>"V%.@\63N3\^GXZ$_G5WB8IPOW@PO??!G/QM0MP-O&HO&N %N ML^W\;.@.%Y-Q4<%3YQAFY^"_FL!B.!\-+R<+:_;V8O(.AF/?6#S'\8[^NU+\ M(\\TBS9E%Q,A8NJV.NG-MX UK<.(*+6!>>-:RK ."RJ85/ ["RA<*9HQDPZ( M"&$<,QK!.1-$!(QPF$41#E(@(WA[-;FHPU0$#3C4,847SSJ>Y_3&,DF)V!0M MMW=4!QQN9E*'-%=93C"PEI@Q,#\V!8T8R_@OB%H203-K=L/I!H:!-A9#8QT^ MBK)R-.*LHQ_1=1,OVWI' ]74OQ!B M,>F0!E(1PW$WQU3*5 O!EVB_,K"AI)0C1#GG&PAP@ISAV6#-=%Q,4=$_H5TJ4"91>4J@ N1*:()X0>POC5K@180JI3'&_,J35 MC9EP#NB&P5&N:$B1Q:R^U7"UAV' L#CJ%CLTNI<*.W LDY M23/:K;[LEL8$+'!C:76(:]C@%"]KGKF2Z=!\J%OK%G:9J(TUK@9]RK8GP >C M=?SEVV)82JUETKM#@8?EW*WO;KLK+(-7$U4$(-[7"]NU_=NDGJ88&?V[=D6S.'V']?AHRO\G=)\\=E\ M#\F%M.UBR3]X1OB^KQU<67,; M-Q)^3GX%5MFDI"J*(B7%UA55R;*<:-=KNR2ZLOL(SH DXKD"8$AQ?_UV-XXY M.*3D*RLGKHH<'AB@&WU]W6CP[&_/7U^._O/FBLU,FK W;Y^]O+YD6[M[>[\> M7.[M/1\]9[^,_O62'?8'0S92/-/2R#SCR=[>U:LMMC4SICC9VULL%OW%03]7 MT[W1S1Y.=;B7Y+D6_=C$6^??GN%'Y]]^R46["9/ M>79*WVGY7W$R'!3F%*F')\_/.,MX"L_J@R?14SXY&#X]&A\>CH?B*#X^GOSX MX]'AP9/]>,CWM\[/]CC\T5/^'[]R(C.Q.Q/(R\EP?_#]ZG)G^$D7H3*;"25- MQQ-C!WES?7;T;7KU^QUR_8Z)B'[X[V MAT]/;]GMU>7;F^O1]=6M^_;JYNHY>+:;V[XPB:8[COIGDXWW\$FS4& MKOY]^]MAU%O79-GZ+.]DST[*3N,21'"6TP\OWPW?#)X'2\ M3/A"V]=^4O?L1>VA&_<0>^;&N]GM@[C$198!GS"0-@9V_D6N4OOU<+#[3_L* MI\(-YT61R(B/$\$*E<^E!HJ)A\L9+T##V=,C+[E78LYC#O/"*%C_%L@HC="> MUMJ0GR]?>KKZC]VK-#7TDA?2P.;=FCQZ]VE(_URV9M_BX!,D649=[($AI<#9 M1[!S=#\W!!D^VG/\ A0+976O1C68H2 [!5@7HVDJ$0DY%VC]$HP5AI,N@X4; M V;">)*P5 @##-!D&F>959.CGCK_TF5S=(:EU"42"XRSU!QKY\,G_0;=6=F:=?@$7$DB(-7K[E"\QOL0B2F \L8V" M&.=YI3[R)K6J 6/7.@/BBQOPCY]1'#YX]3X M]29 QWAI9KF"X21F=&T\L[&E+%"WAH/>8$!_ZS6E!])6;,Z34K"_#_J#P9 5 MH+DTOHE[%B;<%L.R9[%E4OHXK(!'T?]RET%[D[YUL[M[W MY!H95@;48XN9A%U+!0>NR9\BG/<&3C3;4(?T H-2H<.-9ERCDT#< )!EHB9 MA2 'CP%2"7!OBO0@1 6,2;_RC!M^P?6[+[00:UC []#^:&&\BW M^35L!ZPJ((&O0(](;1AW*@W_U84O2/@T)3X1BX0OT8-AW 87!>I/V($SA.?X M&8RG;\(,B)3!0JPA\SJS+*6Z;P0L2'QKTWR7O8^! 7@-Z\ +C3XV2DH*SBN* MUJJ$_M^*LC/EIRGX5.R.E>#O=@GBG/!DP9=ZZXLL&J\ST8^V2*<9SL=;90!I MEXDA$(G*EGC0*[0.4^9TP+B+[U*D.U/KL%D-OPTI0@\1)MP1:]UP6/_/L''"ZPU?TPL-.)V'22QM5EFK?6]"!,Q,2<#N^A[JQ+YKR>G+6VRI*\G]/0>2C^' M,ETXE(>J@L[0>G;,RM&Y]VQM#AV3$H6 8+_!8>Z^1(^)\ WSO;K#LIX;EN_8 M$!+A'JG35ZWZLVC5#2%&2E7C.:4-]:R6)$E0#(#E$01+Z2I:F5B@UW*=0$%[9K+0'UQFZM^G=H^M M /&@PLO5':0H&HM)+W)5IH^^I')/T8&2KUA0?M>S]=#(52\2F4H<*>XB4;A* M:)DE0FLLV+G A&D@QBI4.7<(H.N0"JL5":37B+KFE :6J2MY(AU$TT2 )X/8 M&(&Z0JJ9Y!%1"#,_$W<3'CP*S[H'L/*IB$?.HH3+%%CK M$4AT;\<R2NEKG0P:6QE05L?[]W0T>,XVUOH4L#IO*[-6>070=K5*JF7B'M]6'4T7$4D8/P4_/>/ +7[V MIRGXCWS%UIO*XV9LZ_S!74Q5]=TV@I'8=?V)GR]?]C#J8&R"+Q9Y3>UZKM-M M'&KG\&S5RS;V27]U*.*J_LSW887!F5%YPF[IP!Q4I^<'V@(H7\+?.QM\R@S" M#[@!]$J@=+,<-A'#42B9 @>1/K6:684?$+,#29EL-O;ZSP=6<82 MW529?'G:C*DT=AHX;H!M?T!2DPUZ*;- 1Q4T!(\<8.'+:K\L6+UV1P[^[-L% MO\>]+;8UL])E7^O60?8U+]KJQ5ROOSOX%+5RHT_T,[DGH]KN>C7>GD+P4M04 M$T,0R^S!DJ,E3 #Q<6K/P:6&8" #FK/=(77EM''#-IA4!_?*CB%#K@W>"4+F M>(Q@Y1OGD$1"]M0P#.K("IS(2N*UN+R9)P<1NX+U@7OJRX>IU*(9QT+/A0WV).T&X!;(HC =CO! M39)7 Q"U%!Q;ZZA_:#U3@<:8V\8\ZS.K/;=PH=L*'%TN*VEQ;TN[.H!!VX;@ M@ D-<.>8D#)/)8&TM0TJA"+M 07U02$2$]BG#*S)5 -M!@*Y;[5;)\Q !R& MG87*[MAK4($Q;@;V!A\,>VQX?#SLLWNZ9K+8S^;:"QW*Q53>!DHZHO/ 2M'Y M+V5JZW>T#MV^P$CC'.Q*'/]Z(OTX3J0_?5A=ET0^/>H? .ST"(O>'A^X+@4L M%6R G*LPD,D4VT6U39GB$NL5LU+%9)C6%,'XP.02S:;@_;(47L)@#'R1-5YO MNK M; J[481+$Q?!U[ZA$16JL,U:MG30G#_!#[TO]ZM01VF(U@ #"(ZL7,)@V[#! M/D:[>%5!HAWR87EA#TAL'V^G-/J,NF(E]JE.J33>.!)'8BQZYG;V.T<'X9>'3M.;GEUH#BSR#6+6NW=&BRVBHN2UC=[4:U MSN7J#7_]F0-&>W^_H%BQ=?XV% PZK/M!ND&WH)IRGO*,&K9D2%NL3\&JR_Y@ M4/6;-L_Y#$L$WF@8XI )/).G!,O:;6;N1H.[K$1PF3ZW:UGH;1>DHLD8K_ B M$JK(L? 2CP)4<(6HU)!+)I(*:I&_B_&:BHG@/3422,H*T": XLRM9H$DV^\WE4S'VIX0SUU>(MLDJI9_AY7+7D!MFJ^(VCQ#EM0 MX8H:XH $ 3LFJ)*V1JDU^X*TNCN"N"Y:3)=9V\<3RL<:1BWO]!$-P'D1$A'J MBUYY.L)M'MMBQ)=K>;]. IR6P#<<#].=@=&DJ8K2I MA'J.(WNZ0/J.N4V?73PHDE8!TH$12EOQ*([JPW:'').DV/=P*>Z$BJ2NY#U5 M/"[)]'F*)RN:;8\%)$!TW8-.@')0[8F2U!#M?#Q28*'.-*_RT%+I@!O(^P_;)5M:\[R=1=^(,*A1]Z0?(/ MM/#JU[Z=I7-&>_4%O3\%3& M+T[;#Q-D."G=5'1;WX6]B3=Q5X@,[-6YEX,!DO"CTV03W7Q8O7*,.I*Y@ J!HF6HZ-#!0>U:C$4ZON1J?Z]CQZ M<[NP;'DVJ/!#35R>(>#;>M]@)LAC4X4HVVNYNM;^]1[HL1H^U"41)#AG).#- M,UIZ18D]!>VR&%HB6ZGG0 (ZFML-;[%&^),1YQ=FI%+QQ8K3R+*4> )AV!%O8WY;_E MB@Z:UQ>_>]99;3N]"&+U@@YY^Q^?_NX0%.G.D7KN=-S5G[N\&61954*!YD2L M3/B&%KMP;A:?JUA."9;3]RP)+QW)Y@TQ4W M)X$)=S=X['NI[-KU^]!N>FPCL'F]]C#^@HL,N+*ZHB8JFPE8B^6'E.KI0F5Q/K*M% M+:]4G*ZWPW[9(AUJ;KA[;&]%K<%8KG!:=^RRMY;\_.^FA(2ICGQ< M!.VX1?O^4W M;:E8/U%O3H0G87?X6*!C1\ M?Z)?=_Q<"SX24/J-?T,_ROKM&?U:[/G_ %!+ P04 " #C1'!0SI"CC\8= M @!# !@ $0 &$R,#$Y,3 M:WAP96PN:'1M['UI<]M(EN#GV5^!=4_/5D5( M,N[#5>T-$ 2K-6U;:DFN8[]T@$"21!L$6 HB?/K][W,Q$4"I Y*)BE.[%9; MQ)7Y[CM__K_WTTBX)6D6)O'?WDEGXCN!Q'X2A/'X;^^^W@Q.S7?_]^/_^OE_ MGY[^WKOZ)/03?SXE<2XX*?%R$@AW83X1?@M(]DT8IVCV MP3(4R[(D2Q[HHJ9(JJD-5%MU95$4>[+HZB?W'T1"#%VS1KIDR*JNR98J$E&Q M?%7217B4%"^KON[SK\\S6"?_O%#>YB2S11J.)[D@B[)8+(E=G^2P7]ASG/WM MW23/9Q_>O[^[NSN[4\Z2=/Q>@J6^O\=[WK&;/F3^A 1)>#HB09SDI'QHY&5# M^D@09N^7;GHOBY)U*DJGBE2\9I2=AG%.4I+E[:^HW=#R>#::G8;#9/71+)^^ MYQ<['LO6/9:U/G8_(U$#.OC#F9],Z;V27/M Z)]F>5#>?#],H[.,^&?CY/8] MOX@/24OKRF?IFN?XU>+_XPO,Y@O\>9H"F2Y.@1BZ7[1\5\M6(^*UXP,NM-SN MY\.H_7Z\TO+ >.ZE[0_@E98'TGG[[>F\#;\(*2^*UL 1KA;_OP6.L,NL<_]9 M!T7Y44K6T!2]W/)HZ"5A^[?P2MNW@*/"N&5]]$OL8AN.DGFHWR<=1 5O]BRZ-@+_:S]6_12VP+]#FD$%]K ']]V0#^^[5K0>A@V M;FE98)8V'Z[PEW:Q(R59?.-ZHN9WK"'L\K;U4H;?L4;2%*(]#+T.I-;O:-G2 M/#OU4C]-(M)"R;6++8\&OC]+.K[*KG5P339LX;2":^!B^S+'GC=K +Z^S.)B MVQ?]T6G6AF;\(+W6QJ7$CWPO\I4N>5I>;P,,"==32>V&-E;($E66C*:*P\?Q MXV"8*._Y'=7W9BGQT>+H?,9ZSQ'YOKJYR4N=BRTOM_!0VL'C:1N+(U_EBUD; MH967VE0.@3NZ/L.VUR),_!85P,6)WR;^&\JX$Q;+=ZU[T6:]WRYD&M\ ;#U@ M)7!7RXN\M ,&<*'E=G+O3]J_A5=:'DC\V:A#/=-+:_:V?D^=\GZ#K.^6\ZUB M@U]HU=%!. J!2<#K.)UY:8M1O')+.\&W?K559!1<*:WAX0X&!BB<=G$BN]9I MOK0ML#1?VA9*IO_N4-1XI>T[L(!L/IOYW>NCE]N^]><\S!<=7Z/7VGC_O@N M$@C.. IC@JYBM;RN=;71!PBZ)!%>:7F@RXEK]=M0D:S5,NWT M#8;>L$4C7;EIC,LGK+2:Y39/DDRCT.CB+7^P0860\[19A<''=?B=)FC]@Q\5M[2OH M_'H;M8:3+GL9KK3R=Q<7X94U>]N\K8X=Q?-IN_P,\O0]FFCOX0Z2AGX9C0&) M^JT[6(57EXWX9<=GQ9#O#H@,.]3(L$U_8(1GO;=6W= 2!D*S9[V35K^CC0_] MCM7"A;;;N[BVE?)&L].YOS;202^WB<%Y1Z #+K3KF$[]TF9USMI?[K69J,BD M*0G76"%XM5V_3),V\XIK&+S888S &]NB-I6QU!ZW62'SIDN&EX=>1NI?\N-@ M%'8HJ.IZJ^'8\5#;S:4GL-EKZ7:0@\XP++O8CH+1).H0VOQBNPTUZ[:A9FV/ M%.YR)Q_6;F@W+#K MZG#:ULNX^AUMJK=#%JP)>:[977F]+6P/JPK7[%/EE694F>3=:K,KRC M0T1VTS6[V$:@'4*[56;'2?P C0DNXI+6!%+/AAV2DEUK-1^R9-8ANMBUUO#) MB"#WDT[0<[^RO+%<8Z?OV^GQ<@7>J=D[HD(==G]Y:8UQOC&$WAX4B$F^"1YP MRPI7;V#J-O!'<9?702^U>8 =*,[;X%"83&OMJ7:Y6 7(-\3^NGT;H)E.,.I( M40T=LPY^[=!#P;Y6ZG?LK$.HQ:U"#31QMRU17&U3@.'HMLN+QDOMC@[PV'T' MXQ=7._1*6XBG %][B ?6?OMG][YN_^R,U[0X556TILVIHFIFO:'#%DU4@[7V>>G$V2M(IC87B>[13T6PL M(^Y0=.SV#J]M;>*^9NU)*ZMN%TF;EBR?RGK-MNUT$MBU-A;HTLVD53%CAJ]C M@W"E)=<7>N.NI 9<:2,7KR-X"A?: =\)\!9 YV&7?5!<:?,.?=)A7N&5-?J- M(*%>)F'<$D2]K1:^M\N,YD7_V.-G.'C#4IR3\"[3S%3 M WZTD\0Y;N$&/*)W@L_^^MN[G-SG[UE%VWOZ8![F$?E8E-+]_)[]#:]^S]_] M\S )%A]_#L);(D_X?H7YL"QE=_G5VCY M#OH(J7^J?]STWPFQ-\4WDO"##2L/OS_0 M5+5ON;IAV)JKN[IN29I[>O?M]$$WOA.8\OK;.]!V'X8)8->+1UZ4P2;H__S\ MOK'H)^S!H3&C?!!FOA?]0;S4C8,^D$]M.[*BJSW;L@Q;%S7-EF'-/<.5X?^9 M?4WMF>5V-MWX[N/IJ20#M3U_V07=L'5?PF-),(#?LMJZ%47RG7O>G&=Q\'?VQ[R0CJY06K\!P0@*2+BJWUI)YEBZ:L M.JKEJH;HRF)%-QMN?/<15_#\);LQ<.7"05WK1>=Q0.[_019URC!E'6BX9ZNV MJ_4EP^S)MJY:AM0WQ+XL#RK*V'#CNX^B"':I;LB:V;'L00HO BM.",#^GWJH M%\Z_#-X)\SAD>YAG =#!]<1+"[E3;.X<;:Q_JL7.N GQP4FFTR2^SA/_VZ67 M7J37.8K-7[UH3JH7E7LUK('3Z[OBP)0M31M8MBUA[;"B:SU=[XMVN==--\)> MSV"SQ3:+?6UIG]9S]ZD8/> $QY'U?E^S+='4%4U1)4,#_.D:^ XEUVRX\;G[ MS'!AV:-12?>3V?-\DJ2@#H(ZN5JB+"FZ[@[ZIM8;R*;B6JK8&QB#P4!1>W)% MKAMN?/<144K_;_O;6X_!-=O3%%E7!D;/&1B@5%3)'@Q<711MPP*NLNQ*[6RZ M\46W]Q#LG6?9O+$ULZ]+ %4&O6NI =37@)M,%;6NY!LC(@:HI_7)[FV[CX:=514 MUO;C*@/-D46K;XHJ&#:&;?8=4]5AQ9HLV[95[F?3C6P_RNMOIAU/AM5S[+[; MZPU4N]=S07&I+BZW)UF:)$M:3<6MO_%E]K6> -?LRP+&-^2>:_3!5E(557,< MBRY7M#6U+U6&X*8;-^QK@V7UKRS-_W7EQ6-BWX<9_>NS=Q].Y]//9#HDZ;_X MKOXU" $0Y%-X2X+S&+8S#H<1L;.,Y%EO\=G[=Y(ZD9=E]"W%,\X\RQ/X_!6) M:+ KFX2SC+UW&6C=K_^:D=$\^A2.ZM0N]DQI(,J&ZH!H:IB9;L*GT=_ _)'&@,)+9JZ78E MY#;="+"S=A%T+\:ENF,Y3L]RS;YH#$QPV5S%I #1U$%?M2OC+H P-$B-;OLVU*;M^2U,HHW7#C6DIYN@M1J:R4!&$.2PFC,%\T0')%;I/H M%HSMYCU+(NM3&).+4+$7>,N/)O$X)^FT3X8Y)A0: M7Z^_MQTE]3OJ E^5S=Y 5EU;MS1KH)BV:XNFJ_1T530EO?)S-MWX[N/3 R3? M'? W$X)POQA=>[$=YTD<)J\"_<$ ?$;0F8ZKN9HXD'I*O^_T9%6W70=\_LHH MWG3C,Z'_N&#Q)2V;@[T\-(X*LMV6;5=6W#Y8"GUP@1S'MA55E'JFZM;K)B:?9 [4G]P6#@ MJ**NNX;L5F;'IAN?(VV>B[:57?5LJ>]:HJ/:Q@"VVL<@,'NB:&GFP%'T >!9U<#95L&A MU"1#$BO]N>E&L(_5EXZ=/09:6X62Z/8-W7)51[?!0'(-7=-%NGG1,A37J@3! MIAL!2N9+QRZ^.TT-!IJD#E1CT+/-GJOHA@0&"0)!(]'PW MFE)ZFF%KFJ2Y_9YCZQIH"X,Q%$@@6ZN@M.G&;7CJCX'"8)Z" )^G!.X;A/?X MKPY?_9&B2)%!D!B:!CH&+ +;Z4ED@:$YAFTXF@XLH4N6;0+^M2KIN>G&UP("=7)7Q,AEE.3P]U;XQ 4[7Y-< MQ>KKFJ*9CB%+7*0ZDEMS>S;=N$Y#/@]IPIK;[@1T"FOHO-]L]*T[,++/OZ,/<6T#7+J MP9X$VDO_84)[KG OI[A#''=X=H\Q(W89&PX!^>%T%F%%Z_OF.]CGZM^@?V8) M0 /_HCV:'S@<&0AJ<*3UN>P60BL \8?BES# WT8A207Z.=+:-^*<_Z-9T[?\ M,/W&^^6/\&_,*(KJ7P5K.LVQ+O5C4;.,88+E:[4'""MC9;?SHM/FE=H"RN\5 M/W#(M 'J'(=Y_E/Z[*62OHN08NVU^4=D;!P*1_WL>R^9N M;QP)1#^5S2UMO'3\=GW3#3+?QJ;-G=^TN=U-5WJ3&N9@#P1S/[](KTEZ&_I- MXXI?Y);$:X&I%(ADC,J,_L1^"^#+][,H](MXO!"$< N;J R[^="VFW^D2W@_\DH#9S!?_M4+BBL9TWPQ76 M$=FOA>SO:LL^"ME'?;?GR%ZN+Z!)7=R22V=L8CP@B;&JKH%VV_?GTWF$^5]: M-H6WI62"@+XEYUB2MR?\7W+YNFU7]/'@?;\<[;R*G?LX:J!%F'&>)E$4QN-S M?E3$01+ NJV^"4O@:?*BUI)QD&2QLK\WQ?]';?#=M,'>2P8["$(,YWO1I1<& MY['CS<+#HJ,%V0(/M1 SZZ/+N55QZJ16) M#6'ET[*S:J#')R\=@UPKKBS-S'% "!(\K0CCMU=A]JVWZ)'8G^#8UF4Y@6=B M9E?$)^&M-XS(YC>MSBCBBUBY=S](#7ND5L'\[B.;G]$&YW5T]0C:WH2EAEAK M1=/++:1 G4BQ>_3(=_WW_,K6SF0)'6._MU_Y%5;N( D62GTV2>CL#L M<>S^IT_.?F.K?3<'B+;+-(%[V4D0Y[&_Y[JL?3<'B#:4)FR;!V*!K&SF0)'V M*0\. %O5+O85329'4QGT^X4DX]2;34+?BRC*:!@D7?S+L?/>1;^2# M8^]CD/)AR*+\1*6+SJSO$0A(- )%ZN;V=?$;=9UQT1MW-Z;P<.%-\# M(BC!PI#>@,N6DOR/@.IJTK\%K&\BX?_BATGO.&T^BW@Z=_U626=+AWCM"%G>[%LCE-0R8O(5F/ M(9/7]WN7SFK><4)\D@YN;O&M$<5KG/N^XU3S2AKWZ+9\7ZH\(+?E>U/GT6UY M=FR09O*7[]X/BGR6/;9FWV^-?%[2FZ!S-Z8SDA-[G!*:T-X3ZMIE9Z(;JD?: MW1[M'D+$9E;G(XF')V%V),1YE[%/B-;3X=<4LOXR2/"_&I.PZ43[* M$Z'5L.OW^];(I?.H=$H;_(B_!#[)Z40( M'Y.C@S":'B Q=.[RS9#&$ZR#W\(X2.X.E"*6-_=F5,03".$H(]X&:3S!C2Q: M2@Z"'M9M[:@HCD3P=B3!$XC@'/M2(U9B]\D;)H?A4SQHCV^&+)[@7QR-R$-4 M$D^P%([RX4@6+63AS/.A%W]S4A*$^Y0\?3!-M&WPS1#$$^R((T&\$0NBZR25 MFPEQ)F'L]<,L3\/A/$^>?)H*A_@@3:8.GD'E^?EO83YY^"$M;^IHE4[ KZ/. M1Z3U'WZ\RH/P]G*K.IZU\@!Y?F3?(_L>V7>_M&^-?8_#9-\L@O'J)V"!V :6 M@%_W1_9M&,VWNJDCXH_S45]A/NJ.$8-UE +?0PKLE'G^ /W^9<^17>KW+T?. M/B+X,#CX<0@^6NB'B6"\:F>A=^GY@ '_8%3SRI[>#-H?[)@=T7Y(^OI1!MGQ MC)$#1?#Q%(3#0/:CC+,C-Q^HEJ91M,]A$$3$];+<'AU,](0&T-IW]F9X_%$: M^Y?>GF.\X/%?>F\&P0\2XD<>/V0Q_R@]?N3Q T7P,1MV)(:CBW9 R"Z.)'Q# MHV'W8W;KRQ_B>QR4M:.#LE[^ -(W,)Y\M^>'ORQW/Q7%Q^/Z7KRU9+<0?Q3K MWT>L[P#JBWL_$2\CDR0*SJ>S-+G=IWFL3V+Z-?M]:Z@_GE*S)PA^K+5^Y.WO MP]LO8*T_%?5'WCYP!!_=L8-'\=$=>Z.\[23P\71.1^J=Q_#D&$!QR*A?M^%] M1?[3H^I'Y+\N\G?(8C^F5 Z"WY]\?A/.!=@S7G_Z 4NUS1X"GQ_/,]SQ\PQ? MS]A[6^=B[=W!5;NM"/;X2/O].W-^M]7#T29X@_R_;P=Y[LE)FZ^7@WL*THN9 MZ7UR2Z)D#UV_)V&_<]=OE0R.1N#W, )WD!".CN'W<0QWT @\JH;75PT[&!\X MFH5O$.G'6,#WB06\,"GTR3 _IUDO7&95BFO[?\[#+,0=?TERDEUZ"P^@U9\3 M693E_<+[ZAYY_>U#-KFO2#:/2-XQ)&_9H*LU1Y8RFAY*,?#\,()U+0]C3Z+; M,!XW[V'[K,HTPYA4\R&[WGQMXO1M1?;<9[$8;+\?!*/*QFS;PX2E>/%7N ]3RXGUG;YL\ M=/3SCDQW=/'VWL4[6JB[R>9OTD)]^6BJ?>>EP6JWZW06)0M"KO/$_W8QR_=F MX&"!K\:V:AVN7?MZ"Y(4L6_\4^V[CBR_&AZ?"BD#MR[+#X74TNW;T#G&/Z5= MA%)-.ABGHK)EZRJ2**U;^N59,/. MC)W>@/Q++XSS;!*2*/B4!X>!^;8]O0654.?Y0O?WYAD8.UEV2)Q?Z/^.O1WY MO\TT7$L(^R@%'D8%;U86%/'KH_S?ZPAJW80K*3T.NA%Z#5\@63(*XR"\#8.Y M%T6+\^D42"D-O6C-*_9$^%,,;X $IX/G@N)-J(HB('>DL(.BL!<+.S&AI-A? M?Q&EAQD7_YR3(?'/8__L,@'!3)S("],]RYJL-S+6[?#UA(CY*"'2N'T+L2CS MG]*7BU\?2A/V+!D3XB3I[.R0"&%E6Z^&?>F1*D3:+O8M%HD4C^;F*[L8&"@5 M'^5B5+=OA>ME^_+JT9J _<,IDTZ[3@*/5 /+VWL]': ^3@>HV]8!\G]__0+4 ML$$*N->46[)/GYS]P/\F$;"RH=?#N/XXC.O;QOAC+$%6U(%VDN-%8R\]*.[O MV-P;L?]D\9_2@ P?2@F7:0)/5R!;*LJXG@\S\N<<@.#>PG]6,MI+UP^)C-HA MLXZ*'O'I#KC6&L?; /LZ)"R+IZ+\OOW52?CW2_<3V'M'TBU)MPF1(\F^ M,,F>T>2/9+L@V*!RQ3XS%C@XRGPJ/>/>G_;%#F/0T:.?"UU>I@2+YNG MA(&87R]>4URK7HQO6GFK[P5M;PRS1)4EXX-C]Q_YPFSBI21K724#*;W^R)?. ML[6K_'K]V%7&\V7>:JYR!O]\Y"LI;B,VD^1?4>+3?W1BJ_7N1WYQ/)RM@\HO MO(H?J+:?:GH?7QB2_S*4F]/*FSZP-1\Q^-931?5/M"G\3)-(P[ MO[&>H)H?67I7<:G<6A,N[\/[#_#29)[Z)&-_3H@7@'3X^3T\\O%G^A^/$3SL MTS+[5L_J*89FB:KE:%;/=0Q3TLV^:BCOX"&O]J"0Y8L(!'4$\O)T0L+Q)/\@ MR>)??YIY01#&X]-ADN?)](.DS^Y_0E%PZD7A./X0D5%>WH-_?!"+&\(813G] M>P3BXS0+_X=\D,19_M.[QBA4$^^6!99Z:H MB;HIRSH QM3^^M,P20'ZIWX"+#/+R(?B'ROPP<4!EO) @%M@,: F)$1 'N!_ MTO(J7QO[H"0"]-?<=4O2' \#YQ]B^"G65&!K=B]D210&PE]$^G]-5,D N#HD MZW_S-]1_2BD&\!?^%?[,TB>:V$U@G:,HN?LP"0/ Z$\4),K?'TOK8I/4?:!'DM;78*Y?M8T9Z>7[ MZ9]W[*/#) K@!5^_G-^X?>'ZQKYQKYM[V<'57KO.UZOSFW/W6K"_] 7W=^?O M]I=?7,&Y^/SY_/KZ_.++D[>@;MJ"_,@MR.U;^,W+)O#9/(E/A/Z9(;!6ELCN_^&SEWX3+F+RX\LO M;>\T+%5XS]&I\D:=JE4:=?F2I3U!VVY'FS:1M5:2/(3LA*]QZ"9" $U] ^I8D!3AXDJ0M!^" M'X6+@7#S=U>H*?%2@=O.#5Z6+$5](8-JV7DHA%=='*GF\Z'T[O$JI .X@R05 M\@D11F$&)"4LB)<*!!8:"-OZPL^KK[F;A#DY19%*@/CO4@\\ZC4<:XABR;&J MJ#IRS](TRS&TP<"V)4T"GP_,&_A?^$<;QU[28(_+(N,/8]D/ =PZA1LG@;= MH)#XW<<^\5DT3)%.!'QN$_=N!X!;T_(KTO:19EN'%7)Q==3U1UV_D[K>D"O) M88N2)-J69BJNH;FNU-.,GMXS%$LV',/5G58?(?5B%E7?BKY7C_K^ ?+NYLK^ M>^KIBI: MDFB(BFKW)6=@K8+_BHS##$D]QW,(MA&ZD3L@A1G\$^'\BW.V)91T?>CI*%F6 M.MOAN'? V M]L@ G'KI.(S9\KQYGA0_,*U+?^%6FGFF*YIJ&)HIFZK^/'M1VV@O*F:WP2BI M3[NF2&NNM=N@-0MWURP<3GVO8.-L%I5ZI:D&MMS7#,E03WBMX;[_Z< M5Q&Q$H:-5@GX09(D@?DC[;8'LIQ,??$,ZIL52J#JJ6 0P(=(\(PWX=_S-,R" MT*=^!.C^L"Y$Z&WIV(O#_Z%___A49@^QZ5>JSJAO6WD[V_ZNL<:]L>W UJ^4O^SV96704WN:K4G]@66"6==3 M^Y+KNHIF&*O*WPZ"%"M^V?_@V%%IC>+7)5/X[4RXGL<9R<%?\8+=-@#V!XF: M5"+1=0967]=5:] 7-7O@6*H\Z+E]45846;3$EE@&QQZV\UZD-\E=O :%U[ 3 M/L_VB+LMX:YB0$GJ*SU3MVVYYP(#JE;/<1Q+!S.\YYJZ:7?BCEI/%^DE>$=@ M*3W+J[HA]UYVQ.UV<*M7?*DIBM&S75KJJ38_\F$G$1D-DGB(B]Z M@C&<:([K$+R4> )64GP0GE;:!?YLDGZH>B!^V,I;-NMSRRKU>=]0-%OMB9*C M.YJF]2U=[8&CU#,DJ:>!]5;7YVA:V[#G#1I6Y&&WQ,PSQ5 M#%'<9OYZB^EJFC%[-J-=@T('L1&2C"=%24H"839/LSEF1_-$@#MHR$^2?QC^ MB.8 EF;8?OYA>UG>8X%%IK4EJ&MW75'77^]+H2U:_4>M:6[VXY<*\ MU?MOPCRB10/$\R>"'WE9]@1C88?@R&[?.3"G'E7HUXLI^,2[#N'=A.$77MY" M*97<^Q,O'L,/L7 W">&72L _R4J"][%N(XASQ_G"\5^4/AJ,H?;LOJX8,1NM@T+,5730455$M MP^A9C2 =EWU,]*U!.A;P'21"=U.<;L:W5O&Y.[!-0]-50^M9FB@-;-64)=M1 M%;UORW!C&Y^[7$2O+_Q<";2C9"]C[&",?_&RP/N3R0(!.U5)+GSZY#R<4EZR M7OQU/91QTT/Y H[@SC43G\O9J#J:J*6@&$&NP 'F?"'_"/!_FM M:_M3RJ:/Y\< 7B[ 8NE5!&$@]A59TERMIUAZ?^ XKCDPU9YCR(YB.HZRFC#Y M#:#^#P3Z-8?Y.07Y&MG\95,6\Y%@:H;MNA[^#>@5:39;?<']]R/\-:OZ>9B^ M_[C7+!DG.0BB/^CCUR2:Q[F7TAZ4-'MU]CHRV?=G MLKL)H76:2YSV@_2C, $%A^P5"%X4E3Q69[XAX3? .YO\UN"SFAZLLQQ>QA8Z M(8"K\9C>.DN)3V@D0I(%VBJ="3_ ^\ ($[(Y>-'9),'FD*(E+9]X^?+:[[QL M5430A_D>?@3='0?"#S+;XQ!,.;@^_#?L .^GM\)#N K^'FS;S.@BZ"*]+!GH9Y M#M* 1,#C:1*C.QXM! *N^4(X1W\5N (+*_I>[@D#9E,TY%SUCKJ14;?XX:-S M-@12N#Z]$7Y "C%^DA7YK'0)0MK<-L/FMM<7>F>O)&"V>3Y/LBPU$-! MA"R.88BX]5?PE.+3U@O9%(0??"4M=#GPUA36OSA!RPU>!^8.]I:.A7&:W.63 MXO(9&'*$KBT@HS!FQP.B8/NOOYBR+/[4M4)Z6?JIN&WC#=WK*VY$ZXW?W+'6 MXLXB*B/)PU.YW>_[P:$(2&+RXX?GY=3K$=H.RMGV_(9EZ=PUA:'8V-YE] WK M3%)!KX"\5RU%,I[9T*QNSN\K:_+[:Z;CK*T+Z.A:?O4"MQ<(TW]JY_H=J>A[ M4&7C-A57JV[=[>UOO[#3/E+#)FIXBU7M#W =]&JTEN-(@YYL*KIBF)K;%RVG M[Y@#>:"HMJJY2DN,@H8Q':"Z<9(N'I/1HT]30O7YTW0L09L!M=M]&=^'P/4W M+NZNNPS6?0++5KVWS8QN5/E!33)%67*EGMV3-5?O]RS#EGJ2.K 52>P-6A(7 M%.#%*36O."[WNPKM0V]".?3]?2?AY+8[R/L$E%<635;5Q]NWS;ZA6^K U"1- M$7NF9+AVWQ[8AMNS%:N_*IH*TP8+^VB&H6$ST[_KC^OZ_0A_!8._-9 M>8L76];Y:$UP#;NJUE5!I,V4!DUD@$V*Y1!Y(LPS%IB#5;,YVRW#.Y.4?BM: MX,?O0O@T?%:(R1U&_5)R&V;4QHV]V$"E029@?WD8=!6 M*3]X';45#VT\DL #*)D/C +9Z \,X#M+,\$+F-6K> .9MT=2GQ\^#F;D"@JB%7X 4B0!H%KA6^-$"M@_<>SSEFQ M?Y"L*Z.QGCJD*H4M#N0>EGM*DM7'ICU3[)LXS\X8:$@XV+BV M[/-OI6^M"Y(ODAI:]N=V@62QTM8;CX$LD6ZGK,R6%=USDO-937Y&ZW !U;0J MA29!1EC, 8]EQ:U5WI16<28C!K[_GL=$D$TVAO^$WAEAJ<>0>QI8\+'Z"DPU M2,9/F3!-,JQ-0Z,E6C!92U!& Q$E<5 @/HL1;2LN>4RZ2 8RR^4[ X_?HSWCB(T@+'[8992P9 ( @]%_UTQ'B^31( MI;J& M)@YZP""JVS=E2[4DQW1:/'K64$-KZ.F9E=G%/*=F!\!IA;:YRF?7%U>7%EXTF O3^$ M*W?@7KE?'+>YFZ9)T:GY5X]JR*J9MR3H+> 1DI+8)S?P?"\"5+ZC3(!_7E.3 M')9Z*JKZ8& KFJP82E_3)5=T>GW5EGOB0--MT3RM&,52K%Z_/Q!Q0A28N;:I M]0V\%7YS-3HNG@ %SS!SE\[)NY?!RQ[EA!\\!?L53DK1US1[*P><\"UX8T9J>7VG97H*1NA#H;#K$/-R" MA8Y8O9C01U#O".P(.^$S(?02O(TJNTD2 1-FO(R2VN6@!Y^DI8:>_VV<)J * M3KG5.Z+_1Q7A0C"8 CQ[#&'R9LP](DSA_/S\1>)^+5&S9=_UA0NB9)4!$8OV M:.7>-@K_^,G>.E &M@"; U73--&R'=<::(:K.H.>8H(I^;%YLO=V5>T3SD1K M1T@K0+:(EBT.KZ?BRPV:>"]>D;?7 M]E!Q,-N9)LFF+!;_?>D9.-*:&CE3[+YF[(A5=.BIQEW:W^O,.7BXZMW.\927 MH'EVS1+<":SC20PK=MI+([EC&)OW<.M'F*08#OA+ILK&D(P,C:@C1955T0J( MZ0\E.--@?<4M!P7KH0OB0Y!AFOR-A+:?!GD*1W\,_33TGR#?\N M3>QJR)7WW:5)#=#TEE>#M+2\^YUB+Z[U9?%151HO(&!?A=MV=?>'M-?-Y/U2 MY]R\C"SU%%DU),M0%--0]4 V#=\DFF$.-4D2B:@^U0%^HFS\/HQRZ,QQ9(B' M,X09Z$#YGDF&VDB5)-\,3,W3?5WU5%/6=/)XAF"@.P>C09#.'LL7^VZK;1^< M14WQX5M?FV&G/-[ZVB]N=#2KK_3[MJ;9KN9J?4M3+:Q#MPU+UBS#>!XWVF^. M';2_SR>[+TYGMP^/+_&*(HW?!:#RF^./[U]%9?E273U6Q)U'M.WWX67ZIOCB^W#\[/84R$ M:V]$\H70#S/L YBG;T%K;@;E4[CS /,QNYE0V)7='])>#TWY**[L]$1+LV33 MT@S3-&U5,OH#4U(45QI8TI-+3X^IMQWBCK?*$4^RFXH]/H6=?#^0/%F1AH8B MJH9%S)$ARRJ>?AD8FCYZ CM1*TYK6''/VM5;, &WCP5^6@^.1FCIY^6'?+E_ MSL-\<0)W1'0,V'75U2!\]O(JCV1J8TW MQ]3;!^1G+_;&M.BZU/P8#IIG&D-:/O-Z#@*AK4 -"1%U73=MG6]ISFB9=FJH#TGE T MPP3#VRL_VCXD_XD3SL+0#0UU^GW=+MOZ*IL@O#$82!/9'SSS?']]@%9Z?BJ'XOR M__5\-HOHW]C-]39,_\W@/3+Z^F2X!=Z2:H=&^<$L[P=$2JS::@>O@#6/IV-105'ZB% 4IK MX/ EPF8\Z.)1(JQSFB3%50W1=A3)T32K#\:3;9N6)MNZJ@VD)_3%,8GP]FS^ M[4,2O/H\32*F[VG15O VJD(V@_+(U>MCI(IFRX:J.99A:/V^9?=L0]8<57(- M4354\ZE<_?::%K8/R0LZU_H\9D- PR0^?'[>#$3].%]A=VM7=F7WA[377597 M3V%QS1U8P-JJINF:YEIJ3Y-<>6#J/554^XKUA,C'RH#!8YG7]V>/M\H2KV[! M$6](@J%D2D245=4CIN7IBB**EC7R#0#!F,Z2?8N:](::7%%\>F:/A$)2H2@)I M&$BR(GM^, 3C>4B>T/#%F/[MC6/9/B0K3L=C>TBIR<\LM.9P!=@:5OF M&@CG<4!F>/[EDN7_XITU^R=$-F/N*$36M[DHNF&89"A[@:P:EF*JLF?IIB6. M/$D=FD\MZ);4VD%R;T2*;!^4EVD8^^$,;(A:P<: $%[%1=+;T'\+.=W-D#WF M@'8XL+TKNS^DO>ZR$GM2,9:J*\%0T0-34U1/]3Q%A?^5Q6 H&[ZA/*'JG>6 M?CVF@':(.]XJ1[Q^5;YI**)H2KIK]S17DVQ+L1595XV!9HN.\80Q0\RLT]Z< M;[A]2+KWDW 8\E+\EAI]X=J?D& >O07+;C-T=?GHOZV;Y2J#TE0TQ1A)JJIZ MABEY 0E41=2,0 Z")YSSPQC][;79;Q^2@R3%K/GI/X3K^73JI8O#Y^?-0-2? M,(__ .WWW;0_=V7WA[37G2+O[X+4O=<, W6@.*:A]DQ5ZXF:U9-=U]%UQW7Z M_9[^E $LL$(O?QL-&9NAIZNM*J%Y"G3GD<';/>'XB89?[^ASP[]M>;\XLO]M4?PI>+FW/'%:[<7^RK_OF77X3!Q=5O\,_33Q<7_\"_ MKV_L&_?SJYP$O7(4^3,!Q,^HY^?<5KG-K&HJGX*5A]VG^23,!#N.Y^#/7I%9 MDN;8;5K9P3_@:!I9_*EQ"_U-^NE'>($?S>%%(WZ::,1/$ZT^="+<34)_(H!H MP0E60C)/!7^>IN@UD_L9_,2RK=2UGJ7)OXG/_Z:3+49SE+D"N2T[X4>E^YW# M2X(,=N#EPAT1AB0*X3[8V4+P1J/B8T-^L-9)[4F_,4 GK0;H).4 G3/A9D*R M=3L3LAE(!H!6!-^C3^<3(@18!@K_;H(4/^/!/K+Y$#_U,9)"RF#&2N4IN>HT+ \>;R@8/6]F3<, M(SH5\H3>7%@LG!W&>&APA.SIQ13Q_"U3-F8&;RJX"C@&43&/^=OP&KYQY5E@ M[6".+ F)>*4H)9_"S^KP+RM"%9+E+4N#Q*/Q&"JKA?+Y,V4R8+/^*8W0P M'YNOW ]+SX*R@"@;)15<7QK=X M0A.3:/27IE"C2\0W!B%6T(.80(+EFT"HX+4A68 \8:HBH4W19X)=$Y?A%&D. MUB*,F"03*-B!L.>P=/@)901H#S^9DJPAXN%;^&&"M R&"$6),$J3*4(G(P4N M2,#)LU( PBHZSE#L9>3/.?P1+4X0B@&6#683NAJ$&9 3 ;D]1R!'(443L 4 MV1Q48C>BSX1SD*0!$ZDGS86TT45**Y0*UF("9 M06G,0RP#E,*J-;=X A7ZK0?,"0R!0)VSQU"[U?1QG9$29+GZ:RS!F 2!QYG#RVN\ 8\#"\+600\L-M+RWI/R\6X_VI>\W R4J^^JS M$$B5KO[H -B&9;=0XI8)#UFZKC4\L!GB<83*$PRZ$"@).3$6G D8TIV!S"(H M@[@)?F@]49S=*]"#&H$//8 MRPHD1:VVNF$&M >*DPX2;QAI(;K/L,"0#QA%'1L1ZMMF\Y 1F^?_.0=CL JD MA#&\):<.[I%>C_3Z@'6/HCG&J"A=I1B6GK.X,4^\T5]I\.I(3T=Z>L"Z;Q/L MUJ7B+RSBM_X"W$V?#E@6,.UUI*4C+3W4PRQ3=4!"(68K2__@&UE@##U+XIA$ M& *?)5D6C^Q+,[1A@M+Y\_4N21(A^P[@S>#93C M8ZHS(("KH,CU8-64T>5GH(6/]>*]5+::G7 MD<".!/;P@ BFW;%F X,49<'6E*1C]"^9JJ3Q#2\NZ[&JDLK_GD]G\((T%R[@ M544=)=:GI?E\E@DV+6(39%&2CR1Y),FGR#R6JM%OD[ZLX;UGC7JL4XV7QS)6@A\_72G,WATD>4;NE/JQT MJX%32DGU8J[3;51SM3:Z[&$5FAU5!;P3#X\%S7,RG15F% _?M]3&4NRW%,B6 MD^QXX:78 MK"Z15G63@-8QKUL:M3<]P'T@X!)#6I9)FV)6>SE:>F2 ?T[X?F ?6!@**_YS M'J:L)C+R[DX044%"Z_QHV2@N&URG(5 -6P%6EL[H-_#"6C#>30C]%IHT'#2X M,,P>-NYKMLO4P(BLCF^X"[,#* +^(YD75=9>E"6T\IK5)K%1K$T"W=#Z@L\Q M3 (QTJ*F="$\K%,*T#$D-&.&M0%^42\,[%*J^S4EH;2UY9:9G0M\!?'2CDZ7 M5FIN5)>V+:]H!0 !7Q8I>[X_3QG-!8P[X;5$6"&)G>S9E)[?K_DFVRY?R Y9 M !MB*3.)0;VD 'S6]( 1I8Z^AW4M#S6FYOR\0M \*4VBQ57?OA?5-B]Q$H;') PPHPUI8&*])@4'BYH;))-V@6Y M!BYYT1L!E^;"@AO]J]B-29H6CRW%M]5 M]:NP-D-T>_??U/@-]G87H_U$C6XZ9H%:I7GJH1^5?F,AI(N:P!$HY E,!%!#]R.[X89Z)8/YW@_QIJV96LFO)/0K:8@H#.6*L. M0/(N!'L.> ^H^Z3HL<,Z/F _5M>>\_!AS0JD#@#-SY5@Q[\>MIW]YQIVZF6- M12A-U#;<84^GC%:+>!BG@C MNIM1?B;T<(;]A]'7.,(X3 M.&LGW)N@[7A^)^2 OKB;\_NE^ZEL0&:43G]W6,![N3?Y;J6%>5X-#:CUZ@/U M%K_2Q> 7Z:= \/AGK*T2%HK=N=2U2:)H<8JH"NBUJ??O!(_>X#^!'LG"( 2E M0O80D_L:4NI:]T[Z>O+69O-XBJP:DF4HBFFH>B";AF\2S3"'FB2)1%2/LWEV MPO%ATY\/B*DX^9F!#G3FF62HC51)\LW U#S=UU4/K U-)\ODM^T--V+LY3T< M H\;I;=EC+.YI6=EDO7%<;^[H.#:6;BXQ?X/-@CCSN1,_0LRW\'^ID M38@71-2+K_]*+:'J%7< X^1.&(71E'KPX%!0;P+665\@BVQA) P]KKKW5>SQ M3$ 73Q8ED[IW=, . KAMN$[&_" V0<=+_4F(RYMCSK"V'N$'H!E:"3$E*2VV MX:-26#+)BW[D'4G\U#3Z3+55[KAU/8SN+X^'4 1+%BY[-$^I:]"Z?*3MQLHK M,/K@+V-ZTT]H?(?//*($,_AZ?7[Q1;C\]/7Z3+A) F]Q4N7(9O#N>QHD 4]3 M5D2! )R317$@"W9;$59R))^HHB@$]$0GP0ZZI?E6]!XSMJ'5^^BD M3&IPWR5I%.R?5;O,P12X0S)FV2UOE=D8$R++W)))Z(/7.Z/I%_#VYQFO+.1M M;OX\AZV M>@3+EA3,XA0T%%*P'1N356RQ",>43"?1KY9]>XQNOWZZ.?]LW[@K>VH0- VJ M 2.PN$,>3L&GN_.8XU?$',MI:Z,PS59A1(D=-CL"NO'HCKF''%+ 8'*H7 L\ M.(D!E3CL*XJ2NZSPJ!MOI,D@1);@#;,D';+5 %[]HFDL3?QO^ M\C0,H+>8" M)%X R!^F8<83O,.%P!H;B\^PB2C+.*4H+8B%Y[1P,6$]80>0*>=N51LN?$\, MG:*$P#!3U?:6$A!N<7$!',UQB"6%-+O 9#]?+V9+TV)'^\^B",'(F\?^I(B7 MU4F2DJ#OY=YL'B$6*$,#0I)2H"V(EU)& QI,:AU9+%1>$K]:8[FB=BDM!T!4 MH]Z #$B&M2)A-F%]A*B10I\4P]Z^QK2I^A]P,4BFY?LU^G[:78@Q/' $O"R) M!,>+P3P SFG,.UF.-N(8"7IC^3HF(4$R8,6"V+YZ)9GXC"&/: ME@S/EF]C/7LQ7SLEK<_D/O03CO*SAK7"B)3?7,JXYD# 9)ZC\5!0L$=W60?3RL%_ M^ZEQ:M (<_BP#^^[KAE95$4;GS9^F[#[0F&URC*?>2.(13 M;FHPL< 7M&3W )'LB!-[4&Q/V^W .VM$/@WK*K69686ZLRH&M+I6:U[A,H+73]J7" M!VFZS$)F]H\B;TS/.0>#VTN9M3Y-9I&'2!!F2;28@^T\\5!S M ?9O+K^><'53()91?$@=P)H]3NQD>DLYEC+N%"_N:TYWHPRYN;*=WZ[LRRW)C^)U3(!@!P+8O6", M@>HXY9JC78J@N4+CS0%&:;!&+D6%0O5.__R/D^( B!&;A8Y^6\.:85/AFP)E M6#.%/"P>37.L< N3@-I.--16!?9! ^'_4#L+S"&TR8K 90[J)F.'7Z3%CYF M=88TCD&C6_ FT'11U/ 'RVHI9J'1.?6K*OX 5=.GK[_3K6V)K(K7(89IC&#) M<-E 7F44&2>*XB1F9C"<"?V"6GC#$RU(0S-]1GPZ62'B%6BTWX./6 # M'FU0!KCZ?4NDZ"+9@IDD,+@DOPJ-= M0>!KA1%FA=BD=V8#Q_006$HIO)88OC(-_3098KJ"GVI-F75I7YX(]3J*WR9A MA!T8C)9HN7GQ/OQN/SD]ST__X 9J9=Q1/[C@8T!RBG%-7C$0+8KC(>9(4OQ8 M)8^&+ECEZTHTCT8M:_8NM0SX5O0)FC0BP5 ^\0GM-%(D4YHDFFI+/-A5 MW/LWEA2LL@U;5C=%OIQ%N9M)TV:!%\M-8*M4-5&&FC8T[IFT"PQ;BDK7M&KT6Z*",VY^5H=4A7'3)+H-V4 W5IY( MHQO3D.H9JA%__71S(D1 U-$>=E\\T/WD*-XVQ5#HF4X+6 JPFH.+G4%')8.]LE_F=:X8DFE4%.#.&!^"7LSF^$3*K M8H%TALITA+-5Z)0',J4MG-2WH_W'[&661?$-_#JEQ2&_PCL7P+!VG55I&-2# M1SQP2ZE"(/,<]0ORN9_087BPZ)-JJ2N^YM3C'@=-QR1\B@0OZ&*OI'/T/(R2 M8'AKCF69LWDZB_;>N=C@:6Z'2D#UTR[U+G>SPP)@N*UT?UWM%V<(HI%P"\8D M:)$AB3#?&C:]32YL3J_=JW.7%1&QG^S+\M2D@CC^?EG\ZY=/Q;^NF5\Z3=#; M^84-B\(#*IG;TG! L/ (+=RL=D8Q5AG04XU7G>)])YV&U5@OT'LA9\0\,X^^ MR$9?9"<3M.HQ0;O#C-SJ$#9JEU9\PBW5V=3+6GE)=%'!BJ7 C36,(R^C!L;\ M(76IPWD8!;2\N-(?OY[38LVZWU@*J2+RU:RGS0AW*#Q>D[]4(S;/0"G873U! M.#=P2HV4PN<=TGPI=J6/DS0\=)?S^N*3O2V?X9H:EE5\ M5/[F&9H?E*R:I@=[%\4N_$K/ZJ%?!:2 2\=3#BD6W,^2\ #.WFU#D#UP;_X0 M_LN;SGX2KEWGZ]7YS1_;0I@W(KQ:[;I>6\[05Y;083()2^=(/H$/Q32%0V; M3Q,/D\NL^-X%#YL]2_LM?!R^P\0!-]SIC#[6$4/5".@35F39@G?Z3>Q'*F8D ML8&(J]3@!6#BT7ZYI;@1BI[J4.=\,6-QK'I)PR%2"_4+MD0=M0$[Q108ZH55 MHA$A2@4((Z$V2BWBA'?#(!F%^.DZ]T0A>?T*'RE0%^;QXH:@PY\T9>X^M M97V]WAKGHU+@:])?-]K"F\S8?0==F_'3FO[:DLECT\-OL%S%3-U_N V_DIFB77-75BB?^9!-OQA/(U,=OKT-BH;V*DLMI M5WM./^=X\ M#=DD5!]4;DX:B_704F?ES,6!*$"KM.&D:&NF)5\%G8(9#"_)J@0U+!N[GD)Z M ADS[FGS\YV7Y7L?= -=.J>I]!H?S7"D. _SK$GSF/\/B)L!B[[B\N)DLL+ MBL!F'/88OA+'0?EIR$<;;CT*(Y]IQRC,&\@(G]<+=)=;[IZI TO#O%$%7)S6 M6Q &VNS)/*MBK/7JD!18(&1N/\Y'([0PM*:5)BF=[TZ[.+'7DL]9X"/3&M\= M>3ZVTH3%/+BE$7E%M):)K_85L_*3(EM=TX5< =:>P3F(M#N#S67IG"VR^F1+ M!!F[5]O6\T-5IED8%G2XJC>D8\PIC_VX?=F@GTE'V? &9,/G,,.<*E@4R)^7 MY=R?FR2)F&*_3,FI,\]?OE)QVEA*+6Y751I3[CK \-KEE7OJ?+VAF3JLH^Q_ M=6ZVEK&C57W36MUA5R?P26?VCN7 .F.C97H,CWO F/*R(T\C>ZR2$%"]Y$<4 MA1V%*_%#.*J-C/T1PT;-!XOZU5E(?);&Y4^B?14&Y5B-9F-*R@4T,TZ]$ MH#RXKV&C%BW^E0X"O81EEUB7P&D$<\;^Q,MX?!O#SBDK?62Q*^S-BPLB/@C! MT5*!4!N9(#CNE?WYW!&<"_OF_,LO6R+>E=$,S$&>+ (PGB?),/1/6/<)1B%C M%OCED\[9,2JT5+:(%R$9EOWPW8YJV491Q+4:+=]LF!HGWK*E87FD#]Q$X@FM M54,GF_9F%B^GS9[@,-*:V6D8(P'[*>T-WGN'N(54;BXN/ET+]I>^8#N.>WU] M@=G[[94CK*J3O-1=S-MB04@^4Z08$] J(YHS=.I-:(>8_19N?,P!HU.TT7L##4:^*P& MCI43WC! P >F5B/'^&O00O1Q6E;1W!@39ER4L]5PJECB4[,!Q0$&.^F!;T4 M]83-ML)ELN%6?.A@<=@OZ[J-0AK?;3M'H@@/L*%7?'IH=7H)&DDXXM/#"8LM M0]^ZI[Z!#XT307&P&H:#O1D]'J4X,V;" KRP&W:4QQ#6"& NFLZ]F)5HG.+T MJSSEKOZXG)/#IF126(?L,!J@( 8I^"AK0F3WXY1"C_6:IQD>%!*QPNS4HX?5 M,N!^BY.[B 1CPJ/*/%^+8X4H-NBLNDUGN>R[IN0N-?G6<&\XZ?("2XS+T\,O MP[AB!=9951Z+Z.&##8L'WHG_2X^SH87SS%>BIYV0:3B?%N?I%0.5:$L7CJU! M,^2.$2I[VHOFA!U^14=F8EE^0$\0I?[3E 2A5S2)T3R53R,Y^62>A5Y&SV-) MJ(9=FI-;SV=5ECA?'-.Y@C! Y^[>PX&F)UB9%,;43Z MP[)XTLB)T2G+5 -1 M"Y%:^JRS@0:7L*8TE%O]>%2Y114 M]A;DU/KSS%ZEA^<5D[RR&0;-4I:\O4O0346S$5@^6#BPGI3V<0,=T]@7['7O M:9G*BQ5)2#F8Y+68 M\&^EC&52?121^Y(1V1A;ID!*B5N>Z=44VI1NBA@'Z$FNXNI=]:5V8S98.;N9 M=># (D;,J:8GLX _RTOQ"MX)LV+0+,'6G,)-.>&# 3"OF"X/J&7JMY!:U70M M*OL/0C(W:+G:3[>NUD M2\Z=#:PL!WR.PUMNAO#4)!5Z$1(B?7$Q')YJV%J%)1OJ@!66'4LO/H,L70IG MH.$\P;/D>%B2G8,;9OQPJUL<-CNK&K^ V%F10XV<[NHL0\'3.:VITT6[OFJ0Z!$9DWCW6T!0;(TVS MNL@SUD]2+$L8@.XHEWDX,=N+F U 95N8!K37<5&?Q@Q7G.XL)9>O)\U1Q-6L M\V*\<%'5&)\BG/=/'*[FFQY*AN+TOEZ'KV=<'G76POM-I)J&8NTKZ:$&I2;XT@6.N:R M4A;+I2RT<(47 YUPH4HML_FL."*5:7R"0D)TK7]8^ MK)Y$44KKE1Q=XZB:!Q'GLGE=V!)E)1LU6F'MW/K/FKS06M26\7FO6-I&SVN0 M\+C 8CPZ^L'4U!@1VB*[$M,_X):?CSI$F?3>58=>,WZ?. _I_1X M&PS/9Z;4K BN43I0F=/,_/UQ9N\&;"2W^P+"<<8;)P/D-5S3[$ M(EAVF0Y$%X_*R[L$3_&DWA#@E]JMCQ/#[*1C)AE95(L'5+^*NZZ]Q@9A)R0FV*AS(NV(.']*OP+U45%%)=017T&O"JF>Q,/TH+?^)$T!2>L9Q(480!+#U4YQ46DB0$$]"1M^11MNSLX8[C TG M;#YA=5NM5X^*,EI#6T1HZ,@2E @LZN1_Y.?V8G]LIOGJZE].O.8Q[+T[. MXZK*%]SAK#"(Z:EO7%MR[R:K.3PU,S@-A%5'FO?\WJ5A#A)&\, F8XJ[FKQ> M"^T$.+LGF='1YS1L18>?LI02?Q,K@)NA'*?Q-Q822,OC'&ZH0&@L8>HQ;XR: M:]2":%Q.EBO%,&' /0,N.NL3[NBLB[AA_Y3>0MG*(?19M)!F%YFM6"3VN, ] M*=\'6QVCZ*,F:U%.4NL,8TLNPN7[[FLIE:_U3&=K_U7X;V46L]PAGD<8->CW M1+B\G7BC\CJ;/#?U/RLZ\,Z]1,NF98#=PMYVN%>78MM+")4CF@(L0L_&TL)#ES[D,6<'A 5#_3:TQ MI)W^:CIB>?_-+"\\]!F$/$>)>=+Q#&:'4X1+47PW3?(RQG52BRR?5.'F0@.L M',Z';S];\BF+\UG'>,Q+<>):$I^68]+9YSNQBA?F&6D>VHG-)EA"P<)Z%"2E MON*BLZAFKCIVR@9-9F>O?(@F\U'W!53KT?-MLF*,$YEY8< &.&&Y@,>'+^ ( M#G#_YUE-V*!N18$\YG/>%%$ 5[Y<5YSD]- \AW?++-?"4&A-P:>;SJ?E)AH. M/C\@H:S[CN,YPGK_/>K?BK-\T:FN$\PJLKPE(@(CE<09J5,+K9:HDS67'\L MI\GPX!0>2SEM=+ >J[GF8Q[ KD,E53M\LYR:$K ,WYP5)[$>Y3"M#@80^'%> M-1:H%?JLX? 3=NP6FW\/O#YEDT)N^30X?AE^X[2("4.:QH27L^(8+)JYHR^8 MSQC+P>;J1>'EV_CI&FBM4KNK.I0'/PP+R]G>2,C.Q:!F+EVZWDKOAT"<18"0 MTD^)LW4BF44/QDD"_L*0=7P(M&Z>$V$#\7XRC^B<(+"VBZ!% #>4 Z6;=(F% M'C@KHFA-KH5+VTY.9<)Y4!3I>2IW0ID%,TJS!"&Y.UI\'6:P9K&[RI09C:QG40GS#O M"6TW>D@>O#^=SXK^128>*+_B%,8ZWS'4T. ++@^'/C(9PT^/WH+%T];*QB-% MVS$-$6 ON4[Q)[LQ, $"(96/#;JF%$[,T0!NCR.7UAV=5C6!A^63F]Q))"7 M98D?5@,&BI;3%,@T.UL"U]Z(FJ?'6XJ4_ 5-R3?:;1U>\K1WT&B-LY=QEDW] MTKP2X0.0XOW28=37>$@X5CC<)4M',21QY\'5+'A2A5M90635USGB MW-6I?5-SV1MMSLVP@/ZX#.Q^>7>'4-E9G-R*PFMS;0P?PNI3I &!C E.RYF! MI<8*E:NL#Y]&BW36("EV='A;$F,U>5'X(TQQ@0U"I7'("]L+Z5M2(5#4".1. M#FCY>W*':FZI*@V9H"Q/Y>$ &$4R6I>6T@;E@N'H6#;<@#-WK'#T[76 MH"P' T5/ ;EWFV]34J5\7CK8JU$3Q\M4#:1"7NQ:5<>48'D51\ M%4EM6$"MYA!;)FH08WM+DP4]0PIN;7Z&->T@P)D!B\OEW+KT)EK;@IXO5]2@ M\"N(E7&#DU5-MY-96..8A7V6B-FR1$&^YE$_UN9?A )7NOR7&)J?0(<2B;G# MI87(#K2JJ:_"1J"3]ZC+W.1X:MQR/BG>TFVP2@=ML.Z=BGJZ?KZ(:<,!8M_Q MX-%D+- J^KT#0;LKR:JUBM!!&5 J>OY6^.M;B/UZ/CVM/IO49BE0.7CJ\^/= MJK!4L\"8CF[ JBS4]57-X157*2ULB2^,R1A 0X_VP<#A>AV!5F=P)X<6B)>*^7]IE<^@>683IL:(M%K4 ?5:4_Q?@A+O/ MA)KDX%,BJ#X$A31.F)["[H,BTP_JELV-;030WK+DO9[3!/,!5$[>M F;0VV MW:P&E1.L%**PGZRID2LG-O#'#JR\RIXR7""!7>$P&9HA8H+.+DL^@"X]WML-RV@BNN6**(31BH^(-*:RZL5UI] M^>$H$%P^"\F%4V:6T+J1EJH0?F(ZD\ITS,-=TJP$HAH%"THRGHJH-%5>UD2T^8S@J,O M>0E;$2;QRB(J6,Q_:GB2 #U-(*F=\\W'!-'FC<+U64;J23'*?L$&"2V59N&Z M:\59]&.R6'P-!-#7TH; G95%Y,ND=M+*=*P^#].+-.+*1G'BC14A(754Y]$6 MJ0ZV/Y:587.)EB.N:(/A(41EY=V2/&PIT'L$S=:.4B_-ZO*\AI5=\B5T$'EE ME,)]+?U29\)UB*TV<<()B@*)DR92(P)Q2$C,1YA654MS=F)FRY).6I'475*5 MQ$NLQZJTXGJR">B?#=W!M1V$.&U!90W?V5+!#O@B:8'&Z3R?LRY:RN"GM#6Q M>1[R";(G&PN3@&A-$'MY>^9V[ZV'8K?569=E/![!\#P5^,4H. M% X[C)?WN)7.94"FM,J3-EGR(!XRB6W74FZ&F(3@)&;4J;@B[3Q*\5 MJNVUT"G\\Y30DH8B!-(="NCR+]:[%RMGK=-9V,A=S:ERDV(&Q!1[Y-/J-B\_ M^Z^_2+KX$^7.@H_71&*R?7T M.%J"T)@G=PU+L<'3B?%\^AMR[Q5I#:YRRVJX@KS[M(:'5A['C<; 8J(AXX:J M0"#,:7NH1C,"-1/\!# R./S4=,2+UDY)&$^90F-(C2/ M-Y\)%3+I],G:8U@!Z8U&U#WU[OG4L(C$%+'4)', M;L$/&\'2B1W8 *PH7; S)_A5C(+Z"959";A=:K\BQ]F<*[*GKJ*250\RVX]9CW M7[C^-*-&&_"*9E%,C_/7GX'0VVK(%=!-G MM*@-F2%G8SYKOA92PY1.9TS YQSS_6.7?MM)P 7PZ)' V+6%7V4LC/< :^,( M'MXE3P-CM8^="><-DOXWO"H+0I]]DJ^BS*N=\-,,IP2#@!ES$U%R (3P:LF@ M_%!IBN6*60]A,LQ%0_[A]JO@%X[43/-B4'E#_].&@+/K,S1P@.:* )_#XF#5 M42DN>X4=8'"0U@0CQ5XML1HHLSB98KTWF]N#AX(#Z19\4KOY_[/WIMUM6UFZ M\%_!\JWT==:"%)*:X[=J+7E*N2N)W;:KTWV_@<2AA!@$6!@DLW[]NZGT>>HYR8&0WC(SJX-8)^F?&8,;Q%\"Z2EM>BD2]+ M;$]]8>9%4I# HD4%"S\'3"C$96R[AB@Y!\%%F2QLD:D-0;SR%M*?LITHO5FG M7N'+U\DX,4>%$H-8,YH7.NN(IFNS5,?K_4)5*!]0LW%47.58OEF85Z()E=

>CR0(<&"L0\2V\9A]49=KQMM*'%X>3/ MS#$T6=EL.K6N-N+(7%MZ2RW7.K..K:4UV<7N3B+_]Y56AH)#AGS@L;/''%)) M$^1TI3"2@U?">Y:JH]X8Y5$1_@K]((F8*HVU++X-Z2>&W?I]IK4N'%5X,NC5_GSM;*.(:=H_XC-F7=34;Y/ #W40><67QTD:>Y4O5E^8(_ M&;PK,/Z ]\JE$[_XY^$_#H/G!=)C+? /GG:6/(3H8WKO6#Y*6@9_\2F9?!J# M"]=J)-]I0%O\(WU9VL(B/;ZDX,D3[03=34S$%M$Y ^%%:A14P L!D,@)@( 6 M0),ZE.:LSNN"S5B0]G$E/19$S:I_T*)X2(C[A$E>%US9)2K&E*72G&Y)JDV M7M)]Y%96TM;F\11HBADF(9 JD-*K9"T-K+?CO2:9<4<].Z;[Y^ =[&!>LF&# M^<;41CN6)$9T"!T9VX_=KDP.?3(1W!9#I"-$;L'+J(JX1V;2L&N#I]+Y_.$+P,+#!T4M@%?2M^AFX/>3=2.1=]*F>;4CD:I ![/'(Y=1+58^U(@3TD#DM;C!#?>W=\/XD) M4:F*$YW")!$UG_/50!>]=SMXZHGM9./_"O<9552(B4#^IYQ,]XI*9D[OMAQ1 M5KYTTI<2D<;\++D_HA]%!DT,UT*'=9=/9! MO,\I/J7=CB=GD!(XT2Q'*:,3BUT-5YI2RK14.$D>1(!/Z6MU:2"_L](+O%Q' M_XZ*&!TB76I3/F,36QL/TL_"P:(57^&<)'W-SO"9\8&6YRG6F\9+X%P%J0 X M<'51R/6,:-@3*2"TK%'T$<[74%F/X%T30M/DFCK=FA;(6@O/\/XQ[:7@6- [ M:9Q(?TZ5@:9$R:^&W.?3CRF&%*GG:EB6=^1!5HM=./T@'"#Z7C& L%>8NCZ? M\<5!$^2PG&Z&FB'1UI6 P9,1GD]J$D]M%;M,'2R8C&XVR><+LDXQLUN9) UE M!?#YKB=$+[2R+9D#!'[S:YQT; /!7#1=&EYN=&?&.+V08WL1[VE4%!AXD_@4 MFOQ.ULF!I;;9T1FE'U3IU!,O\9%X::JWXML;.9J+'!&85^:2=<)+#)E(1)D+ MNL 5%?YI3L K OL"4;W*$H\$Q(:=]<7-"^INI$3WF?>0BP1-]Q+BL-A FA0> M$\EG]V,'6BES, >4LH>'9461 IV7Y:/PEM)SP$I9!IXP>C^7]+,O&.?)? M5$CB51Q6C[AF%Q;960I]C,O&FK:NBSU?QK;N_GHP(,[P[/B9(.7_1S2;/PM> MOOKPYI??O3_\\]>/;WZ[_/A*_Q)^]_&-^>']VX^O_H=_HH7Z^/[RQ1_O+]_I M7Q%*QI5.ECH+[Y=Y[/?K/S_X?_KP\=7E MKQ__[O_R_?_X/U^^_^WM>_]7[]Z_^>U5\#\K?MOR(O[3"_M;^>S!AU?OW[QJ M_AJWTOO%+[\V?O'AI?,+%(?@Z8>/__OKF__WZN6/YB^7'^QS?OWG_[C_]H<( MOSCXS?ST_UXY?WI]C@U"6#EM?W5QY/^*A/"W=R_-CX7ZGE*WO>;CY4T$/CG> MYF^L1; 3IY""D>"^Y,4\+S29]'<=A6;7MV/AJ>&J.2F9LD'@D/>3H:#GX,3L_.#X[.L,6,6KCE'6*_ M:O(G^/3M[>TA.&#IX43@+#G^JT/*;:6PACI*#SSCUCA&&L><.R9#XQQ#KKGN MSU+2@Z%7!2/WU%-*F1Q.UMIJKEP'X;-8.9[0N*+ND]"B9;/FSF?J M.977%!%BQ\^C?'.AO)J3W8$2*+=Q@MK89M$GIO^^Y)F^IYE2&!R5>?!7__DL M@N'% MT7$0&7TD=48KI1Z!+]A[,RVFZ$117IC=$^J!]8KNT;\I\DQZ G$2I3L)01>R MH1:347&&C6MCAHXU9A*[T4FV#Z]>Z!R;% "J$K6/KBR81%CAH6[;WI77E50* M!1;40I[[AJID8+3O=3>;9B@K'80Q^ *U3D[ _J>TLGS[A3GP<$L2B,A/P6M3 MH/">"Q'T UX55^LYGN>PDWRX!% MGHG2Z/."8XE-;]K58M$8=PAGKAV&S*^A(CBW;F24AH,^I;355P'*4@@:9'(H M81@YRB"AR+MU%5P5^2U6E=MCBH>72^;DLQKDA@5=MZTXG[YU 'M4E$G&YGT- M^G,X&A^,'#VT0G6WB3M86/%?GY0O3BY>'KU\>7ERY6"QR14VX&#(1DKCT" M3C;<,19,N^JJ2J=N>,I[UJQ#Y\'>JH"[7)$:JYQ@F1G">R/2-44WTU(QCKBV MV;TE L]#F6O_142-0QBS_9U[)]Y38!Q?^%I&_:N,^H,9]3(_:>=N*] MC6:BN#QW&WW>2%/-+BW2*@S1/800^P:Q9#KD;GW6Q%D9TCENA9(#$3A#=X1Z MUN SPKR&U5&%K1INPOE93FA8<8*/$IK-VN]"X+IF289S6MRO1 4MA'BH6%_A MHRGZX(G6 K:U]!_JR;4W1[_V'66!FZ$RG>Z9)@Y/:+:BN\'-*GM%("*IV&C6 MK!??@>"[W_FL*V>Y5)Z+@+R*RXB16M1G85 P?U1T3S)K4FER%'K+[WBB3<*9 M-HX)IEO=H@N'A<'N.]^][7B-),U^1:N6[27!/626%7PU+ +_F4966 MW-=F+W4B.N0>*]WBI*M-=:$3I] $O0C_)A43>CVT(@;].*\PW\F-$V1R5QCW MH3E/H^* *DJU)A"%.JT-@),>(O7%:)BMO' TR"0">8!-X2'3U.)\7O$;HJNK M0N#$D#"1A,LT8KXPK1-V:=C,PDJ7$N,I5%06YXCDA#6JDJ-E-I2,(H[T&FGH M,!GBR$OM4H>7#/52AD0V!)=%&)K&PH"&.UR'7#,G<#.>;HSP]?.V.?-!;S^'YKV5BK]1[RP!763Z34^,_'Y_!0 M(3H[W0PA&UY#(.APV+BKA[&+IOB[4,-*\-&5PI%$;V^S:IY4P M(0P2).)IK![TLR^,^MN@Q52)TV78N"M)-K MC&ID5*O1!8190RGXLIV^]WX3%V <-@!Z[W M!3:Q[F+"_!J='$=G!;VEWEOJ=XL40=\R#(B@WDXE#JL#(*!N,:Q^( E<$[(R MB!<.;"G&XUQ\'PJO4115<<].D6#I%N5]']-2OV] Y6ZE\:!VS2W3&A;$AH,O M!3=Z%BJ[JJX%8_I&8!,B@T+BTN-T/IIE(6LLTK-+#"2(4#H\B6 &<32O5O1^ M".!96DLG ^9+G.5BK#9Z8ZPFB$>'^KJN*$;)A5NF0CH>"450H2(2 UV($J[M= 3M+*Q.0E?H7SI#KU2V"# %"HIFC;7V+0Q M2!$GD_XQ7GU@=J# _)+R24F*:?H[B%XDLT&5YRX4A5,.N"2@UFJ-S"L<--FR M)@PK/#86-+()U%;">\KIHJEUP@==VT)G&BY#K34 V.ZZICNWL5XU0?(@YA.2 M?S1<-5.4F%ZN55.1+'AXUQJ0?F$>,%;ZXF&UZ%;.N74R!B5="PJV-D?,[0 / M((8&2K85U?6_ZN@38?YAW0K,"G/$9)'1M\ %2O.2D?S@2T5>).4L-()QJR*- M]\[+ Q]C]&AX#>*WJ!$^I>H/@3A!.+0Q,\9#%(OS2P=B0,?OX^F\K["B"'V ( M "Q@<"AF[\9"2Y">%!:7.R0T^B=5>+HGD4MU6FTUQ+DDS#S2S? ]Y]U:"1*/ M*0X/D51])*#.:S&W_\F"WI8:A@Y5D%EZO=JF@ZRQ5\()Q^N)=XN<.K.7AC=[ M8S;.Z.CPY(?-=*J8^$'W>;H91XZVZJ6S_(2X5VI=2GM54VL:XDXI,$WC8!R5 M"=T]$7O] 39DCA=4\VA,9]35TH] #SD:@%V^6*(O;!\$-4P)I(\93$@YP@:_ M=),I35C]5!8[0/E6 W3^*+98BBW+M])4O,L>G-2%9P_JZ_3>]B K4.>A40PF M!9O\4BGAW[K?.NK3_>U_KC@N()O"56G4):S; YO"P(;)2N(]PK56*%M.1 MA?,]"543:WS._Z]Q)+3;\YH9#U%1K5Q;/;Z26520 M/;QL-K8QVXC9;?T47K:%0_7B\?TQ$')^F_'N>C0BI&\,N@0S/[A8K'GAK(_; M9DMMO 8*N8H^"QHK2],$PY\S 780L@1-6B!;ZLHE91[AAU*5:WH)JXW"%ANR ML2'.)D26S8DLXIIXIKTAN3O2D;SRJ,\K;Q-PN95AH^]L:-Q:H7GA$B )50X; M%_DT%%QNIAMRB0-CY'DFU[M4Z0WK?[2+$H'!06JL*-)G##BZ YB* M#S,ZWL"=.*ELPM&B]8"VNDF*NOQ6C?R/;6VP7+$YH8O68FH:KRLZ_QHA:F+G M;CU!J^P)][I*"@UQOS@,D$D+?\_?\>ZR<@Z/CND:,.Z5S>FX=9_Z@L,'W3&D MT.9AY 2,E0LTL].$U>%1TK].9*,XC,G0[C-BQ3FX;Q=V(%X M6OK3#JG,%\?5<9%ZV$'[2'#,9$YT'QT;(]G:OR9_%F7AL<+].SJ]2:XQXWGBO&R.AXZOPY&]_7">INM/Q%8K. M"%E2F/PZ(7B$HD#&1JH@,;AZ_%WJS#3X[R%GB,R%1R2'+LD*':96(@JXJ*3* M^S!X4_&]-4DQ1 =NIPL!0#'UJE*S.?/D9G3,T-U&]EOR/=(HF0EG2TF02LX? M31D$>9UCR9/1!VOM*N$K=# >/ZRK(QR<" Y4B>-(6"<,V4E7+0+6%XJ>MOHP M$N<5AO.O8*4T9@/-!:?NH)+C]WD_8 X)^UT>7^>,*% "6^-!X[41"Z;BBY6N M=D&OK//"W 3R0RMEB1(&?$<+2(U01?2[UWG3%ZIU"?"^\_^K)G94^J]^&X! M.24B3M'P;)F4AI.3D"]T:8+(KL0[)201$<9X M7)0@VNTE.0X)*$4KJEICXE.688)7).P*2S3_J#)+/DX234]8U_%_4+MCUT7L M8;?&/W6HE'V_.3:Y:74"RV-=3 TBQ.S+J38 M6N\"C@CI2*58>O"3$Q8+02XIZ&>:@ZH\7/U(PW/48!);CLDM?948B]'O9YO2 MN00DI1MSH+.(YDF#3ITR$*F'5L/8!ES0!J.=L4&9J5MXM+Y_'9#*-"KA52JC M;)7FO]9N7"8P8_ZW6P.+#KJQZ!6B*T:-Q:<7EP;>";=$D0BU%H%[H (!G:59 MIA)!Y86A8*=>ZX(Q]@_K$(/>)#1I3!U2P,B.,[C1!F1I8F@?8I7:TJZ@5( \'7L+^0H E.*+N2K M1/XUB3)4%*",D(20;3>YXJ9MN@I^:^16F&W-+2UD\-[Q\N])_Z41(\0M\MH" M(FE?UJ0)&F7:X-/5!%(GQ1\""W\7;3JNHGELH0_8':,^#"YMN;)K;SCZS?"= MN\(E0F5#HK0Q%!6-!;_,#-]O)J9N?4VUK*OD];5IF T;T2.LL(%_"Z.K"=C* M8+&3HQ"G)5M%!F]+BS%>6^C4LD5G$YT<74ELH$*Z(,I=7!I%72J7TE&?"RE0 M]?)64MWJIZ[]5=!N.X:1I0TP([YXJAUSQZYSYS]'NAL"RM2G;[VG0 M;6<&YJC/P'2_VDJS?%^E^1C^S[.JS"%P,CDBWBNZ$+IO//RA$4I8]4<%$GD' M5RJ'&W5^334!5R8-J_ONHX)O#!U/IWO)\EXZ<9IIBAK;FM^Z#&BE,M!&[XJ- M64Q24N6&2$]#^NF=&;O Q&XUA64[=(N,F=*2:MR?31UPX# 0IM:Y9@ M7G9MXD5>0]Z4,"/+RKP&'Z7IQ_FKMK*):K P?$6N5LZ4*:N>3)#%;: RRXN*6P[%/XIJ6 MD'IZ^5.(!7I%I6I48^V6'%!S?RD\/C%8:V#4D T2V;"2'139M\TAF;0QA?57 MJ*D:;Z=56,-'@8Q?XDZE>7;%3HS9#$U; M*I:I\V7.\8C/2Y8=?.0F3^N9R:-^P31[6)%-Y^^WRR^L';&Z+Y#E1XH4>>L" M\A%:B*OO4%I6E9?X"(HEW2@X-DOXD1 WLAY)FB,V5BNHL,8R^B<*4Z M;I5*,@$9\_E#I%O>V"E@*&FWXLX6RMTU?MW:(LT:GIU WB?PY7>WXU)$N<4ZJ#&XE8;CFU7ZT=C0Q3! M:TNENNV$-WGX-%\2D[8O4@))=QNB1\Z5ZFVCU!:F,6$E%H'=J=TO,Z$KDO.' M&D>_[93>M=\:/U[L8P>-GTEM,/2CLM;%=74G+J_S8(J#-F'!JBJEN$R& :7$ MOGLF<3 ;4[/.#@?1T7V(C:FX?.W##)%KIJ2_P16"[I911FPZ%0?L'X%7<8"4 M#12ZTU+BHTU&DAVP+>]39T$J8=&-C>/0CN&7 :%%L0);@DQ5:D, \Y/D $,[ 9,,P1"(%[VTEI*QJS4%M4 M"6[S_;3OM%;83(/U/"1]<.>#M_-OJ826\*4$2@V>C\.S8< -C6M;>M1(M#X3 M*O>F"@/;/>**U#?"_MD6[7ZK.#WE0"29):TQ,%[=Y@65#=JKWO1LD?<#8IF! MJ>,@D;7>LQFRGC#8 Y.H:&O(<*OJ*I+(#8<*H""5?ZFKQ0YTH;YMPG7:1@HC MP>8X:>8$\0+;&&9,KO!+.T2%#G"ZM$ITL!N;35T41J*@@_3+1A204FR\KMI_ MH]=Q];3;A;P7Q-B'>"APQD&I4N*+TR+P2Z<#4*PM;$:Y3DHE:1:/;8(0)!RI M;)^I(FDNI89;::6GZP5M#(833<[ EYQDTE>Q)0O)I7-3=3TV4508AEF;8N(#9*'VS$M=WR[?- 2 M/EA$[F'B;TCU="0Y753-':V,-A=/![K2W/VQKZ)83SYB\GC@I4'R\T:%J4M@/U:WJ,]*O4.P<7YK:OD=T38@L5%?,ZSYK9#G[P'3V1.E" MG\.[V.^_UNW>,W$IVST% Z[6%A7/^H+%=@@3 M$6:6S=\14;[KB&PG0N^9@O M<>:$2T1V'$&82+GJ0[41XL]A_DE4DE4YC:. T<@#E# 3A!3!PHS)GWDA\=2' MCR"TM__#1FZ,04$&XIH88W])V@C+56;8SK6$ 43E+U/B21 (L'4&,:Z% MC@ M2YEX*"(/,!- MFE]0VL >%@XUZM<0*64T(Q] *WK]R9";26]-79B24KHQNQL.]R".Z$$+P-ZF MODN<[@*$\N?KS:Q_@ K1I561N,L\+\L$G2 $UC7Y8[D!"O*FTG1/HB,").[7!THUF8%X=ZN9;N[>&4K@DOUW'6^3M%/E" 7#<>R,%RY-AN8"+[EIQ MTTE!A\N;#MF5^CUA8S1:TGPP"Z$(P&_9;-S2&E+G%=W\!J"U]4G$,E 4TJ), MT)4T',2:14UL8Q[2LVYH5W#O2%U3@;Q\ M,3%UG/Q9-W(V-BE6UDU"*FB4TVZ=HT2L-Z>05V]X0W_H1$..71M8-B0]2G!^ M;(=$0]X9*'*>Y\4!; 3MF)O(J5&KV4.@);U<):8UMN^!9Z(R*UOH=+#3,;__ 23 MDANTK0*0C;;0ZP@.9KZ/MJN*V:HML.'Y%@7EVF [+=V15)%GGXYZPWD:4QET M!U..@-DV\J2_G)Z$)Q?#C3R+@\1FY?4..GK;R2UZAJ8V?GRL-FE?6-K*RX:! M+\E4$WERS_I2L+?M:"\#YD]M]X2NAC0I$'[)$O>.5B>P/"#=C45@5TA;ZG2# MX;DTK LNE)6/A 0&#=H52R+M6A),1B1-!'"@"&JP=/L6J'/K*N<,+O8)[[4RS:$YKI)*3<38[T!_E,O_ @+!(AW81: L\E.2:HOP,6/L?:\-US8] MPLL :W.TC*:46"T";4HZ+5:@52:JX/XFI2,R*44A$'L7K,LX[ HHW$F?==LF M4+A&2BHAYU0#4NI..Y+:1E?A/5(.7IJ>L>)LHR%%',9UDL8-W;\G%]\?K65: MV)6#8]0VA9*P&.;=J2PM85_=8WYF=>@4FG'=]L)\+[[S\[9WM/$Y!^F6 MA]IP@M>!%L%%M?@W[[?">D))%KA;1]4V/,YDXK6)^?'HTN%[RJF!EV]WW2BF M?%9P#%8GVNR2\DE_S$B]X41BO3RX-"F54@JU4J1;A1?["&+"V\:0),?N;5<9 M#(1C%,[^P+H$3\Z9'4*#STA\BOS+#(B:LN)54#$)[?QU0=T\-OJP* MO&YXIWK F)NF$9[]RSBBTC!+#MYOPV:V 0\Z0K!0]POH.3DO-F%HE!YRODVN M,WC"E0YX<]XB4YBX$']"?[ZQ03UY>T_>WI0VN7^T PDCAG=J%[HMQ.Y@QCA< M"H2L9K!(EN6V;9TV1M6^S\H#BW1-9$UL"1-;<]!PJ'D"+*Q>)_0Z86GP740044)Q9\5R.JD PA;X+# ME(@XOCF^)I]\LI7(&*D7=Y.JA=@#+=6D+D08"_GE 3LWPXWH8JZ&(I[ MZ[9">NAS.A.*,0 '+,!6^U$"C^.7_$EC4PI*+:'L68 XVZJOOT#UO0CBN6 M97P-WWO_V(/GC+:0F,*_*&]?-N"?I/2>=FTUQH7&,.7A8DG:6"UR#;[$O0F' MP6L\>I\C#$>%+L*#B<)1U#TIX@/"SS>P.LY0F :*N\EL(R[&*#CJQW)F"YF; MK9"Z7XW"EMPTK'3;=#UGUKM6>(C#X"VY.1JZRJ#GLSPW(;/R]@.59V9#=%05 M@6MUF;@%K^V#6ILQ@1P67[<7$Z0-:[L-KZYGPO:1K(VO/4;MW<"Q=@["S50O MV62RV_ZYH8=3F@Y5A'3$:?(/T[30.]&]#=L<-[:)^_CE#6@E#T#&NW%TW3K# M)FICM_WSXX6/9M/[TH^DS!QKA2M>$DK/&29*LEQR"S'EE/NT^+E?LPOW-6OO MWH8'U5ILT3XTD=Q":SQ:K%,/"I9.5$[EH.:7!J^QD2+IOK/Q.M=%TKICC:!8 MI174.A=?T$-)*281L<-I;**FVT+=+,D*CP\?+K6K-G,@QN^>%+A80! +F2.P M2^2W<4B,^^^L140+9U;,(:K1OM@74+UW 77L[[2X\5Y4N^K40M,D2%Y=/@H(4X_H/.C?O5&"T81-M9DWC:UR1N M4TVB%RFQ"1DKQ@PH]Z^:$"?:< DI/G%KF!(1WI9;Y375@FZ/HZ(W!S_Z-@*E M7L/[4OIZE!D$/WP\%;X)6K3M?)@JBE^5NP"YM1SE<0Z\$TD21:[/>U./F_C. M$FRE5%,G!&JH H9X70)B\F 0Z4IP09?N@E1,9@2I&'O/6HFR25!5D^M$W5#6 MG["0&9&6ZX 8;Y!;)*F"R[&$C?JSZ+A4,ZE_7:+8,HD&58&C^>'4=L/LIW7: M5DC> &:U[KWS:/IC2,$^,,)CTS2AO4%;/&-K_IU;5E?N+AGV!O$VBS6I9ZJN MDC*--'RV3:/78%ERYH"ZB2TUB3OF4B&( D<,I*(4ER16( ::.X7J>&C4!E 1 M1@(FPZS41&\L+U)[Q5%,?.0!I-I"$T>(@IFQ"L6R96Q.R[7!^IO!_V& ME)\ZA4/$Q.AC=:B9%#'[:B+DHIIBK!'Z3"V$H8XQ)A 45GM+"ZH2Q"WQ!)P]ZX0CG8K*$#W9,N"$T!I),RSI)C M[@/&CQ2H=,)GU*W+W,"M#!28C\QGPCMH+DA=! J1Z,ITJW29R252F.J)OMD@K(*?*7I ME&L2/PN!M)1+]5?S8^H4!B8BZ3*^EZW1]@(N$45 M]]EKRT=H/'1G:)'/I92B7_7-=AB20P W)ORH;U)L^TR(9CQ6Y1QVQDNVH7MK MC)UH;&@;^QNTOT'O\F:KZ#,R+$4<*#?TXS6FG Q4P%TH5'"[1A9>P[*8X(/1 MS^VORD?2%520;(GM"S6/*M'&Y#)%!:;:^_OPL9P=;6Y2;+%2Y(?6#!7+.+2N M2C9QH+[B['$J_SBGYO2QI8EEN/&H@9QK\E;#!E%X>3=:6MXZ&&F:=@I!DZ.B M:J&?LL1J;--I]9TN!&="0RGZP79"4YE$&66H2^HP7.2UP6/SOJ#S]5C'8 D! MOLB4[$?<'$L'+7X?RXDAN6^O\U3M23;POW.45T%AECJ2R<+ZJ<1Q_B!BZBVF MH_ZV!6T.@$*AIBDEI(HHDQH#1BS'U#\,)V?2!"ST8!QCK5KX)]F6A.'$2.7$ M>9I&!:>=X.DYLH$E3E:2_QY8)"0ZN[H#QF3&BB3#0YM^X:V4YC5=:C%L_XT* M'%9%:OM"P MB50&R+,5.76%EU&EC(1A"705(?."8LR+ZT1-@U?FFV_YFUP?^#PJBD7P'DSB7%^<'^":@:W];T0@ M;'O2:V-MF"=E*F$:$6S4AFO[FEB/!=J%ZS1UYO,P^-4!?W&DR=8USJ@&J6S MQ3F(I_1-P4MTNK5#"U/,D^.C[KR#A4O8WAJA=_K&/4&N@\N26^=]VMQ0"IO1 M3[BJ(P135\H43).AX7Y%GQ:RBLQYN%4&QMUC>-6-7T3ZDNLN !X(OYS9H_!2 MH6OAK M:H (=0VQ@9FS3_55B.VK< 9'7S"D[\[G7?UZ&-=R%E( L(D.SNAB)D8Q/ ;2 .:7C7#&I&"T,-"W7"-)&N(6PL/WW:FB3V; M^)SYD?-H0MS&2:F?CKIQ7E=>VSJW\!J&;=!M$\%AE*(/'X+1DIO,(FFXN'7Q M;@DY95H7I)-=O-4DD*<1>K5.J3631=]6)!>%U86>97:; ATP/G:311=ZVF>X<(<(B1[(B)9^UA M2+)I ;M>U!.&KVT0I=]YQ+C@/C=:C^O%EY T&VBYTBFZA&',LJ7!O>NRR=,. MV]TR'?=@F\0;3]Z%3W3WN_%<KFD[RW# MI#@=)MQ/\H IZ J&T(-29O^3JG37F#*@9S[#@=>S5\)$RBGG^[NO+G_3J5M'Z#W1=(^>QP9!PIY:8L0R7Q'3.1@$;C3]367QM= #ULR+#6R^%XS-]P&Q^5RGT6E^Q(_= M8/]?X5P\K87O!N+!%DT_$[W&1];=?8=_W200O&8DHO'-.7X<8QVIC1\+\Q1G M7B7^;8TM[+4UB2.[M.31<:"="8OUY)QI:<@[.R($O:N;A@$\:P*:K&H2]I#Q MPT$WR^).VJ_.N(35UA4Z;8+"R]!NJE$O8E1+'ZJQ1S'0;[^ H/ @V#2*9PQ/ MUC([01IV&X(-@0$Q[.4%#43FUC[)L#U60(0"FFG!+Z5<8O30PC/)"U@;-()L M-V5=8%.;& 2K)L)L;&1J:62^=D01M&9EX[ MQ.40=-E&^"VIQQ\=[*?)&4DNO6&8 M;%NS)5?Y#MU-:6.*6O@K2,MN0^,A#]TKCL* .CX-4VO-+?Z'0G8X2 MG\P3OVE"27X5BIYP^2#1)"L 1SR-;N!RNH=\BJ.U8FAW QZ'#8QCVAZZ2376 M<2BP6 XR,BX(V7I43$4WLL9U8( #,(IN$J1++Q'; =,/8CCQ%]J-/Z[CUC1* M^#MM*S:(T#7N\Y[X,1^IRD*!>>!A5+16B9 X:3XDA]C>D+R&P9]U?&5[UBSV MNSY/JQ[=@H$@T7D\2(3T$H@*_.62^^SQ.+QC+P/S7T^I:''PC I&?KF\?$<_ M#Y_]:"(X#]QW#[Q&.%"Y "2:X?M!J[XDPF#4J/=ZH+E:%PYA'I7?4.ZL-+&A!+8#73>=X0].:"S"23)A@=DE MZVJ2,3Z?IXD-EMD8F:%%UD/4/GFX N09O1N\ SBO1B.*DL(/], $E0,,"LN@ MV<*77IG5!*'5##A+\EYFSQU&9V,#'-$]AY>'W/YO"*H<5V/BZ.N")2,CYM+IE MX#H+84[DX2%U.B2%#D*D.5Y22&XK^QF2\9$1^I"F% \I>GL;F7!,G-?C"ODK M180ILMXR,D?8\&M.PG8V%J 6.8_^J*[R/,:M_ 9H7UMQ43?3MY),P,H)DRSG ME(9AK'#SE"/MNXNXV8%QH:"DY]5,=49:"9!D+? MTN)CE0H,ZA1K129*!^3]/(Z.ER"!LS=8KO'D![&6;0=%M!73?OS:.X"NB=A] M&^&5D8-[[SZ"T?@DGAR$T_!\!KNK^5V=-O-WWL>Y3PSOJFE7$(X# PYG<.HY^:)K,7<_$4)AT68$E[;2;S_5=;S)DK?]A:EZ9M1%GXI)SP:HMHD#&R0F*;Z70R6ARF&+9:M"OH9';; MWHS61EERR$7K-@W4R!:Y\U9DGTD7A\'?\UN,7H<,'U:2]<+U@'1>8'W$Q3$@ M1%>Z$@$IP1;B\(#A&4MESW^^??X!W*4J7./ FU:@YM0JU"BF8Z YNX<6L.P5?F9ZBX58.N%'6Q9[ _G6:XI!TI'^:QE/HE.IPUYI BD4_C7#&S M%'/->E?2'A=]VJ/[#L8?]U20H3[EH3$&]>J%HZS<[*F.8HC/ MT?Y"@I1#-6HXWMQKE_.6NJ:88P+&4-B)._E!MU94DF&9&:O9W%ZDP:46:R:> MXWUO0H3A)BT5%6DB]Q9'MD!?/4U^M 6P<632Q5.P&T 9$F(HV *4CR#K"[>P MRBOR]#S..+ ,_C(\')P%8P0"1W/M:7*/AYO8A_QE2M57&3')HULC7XDI%:^_ M7L#SL.1?@WF!/"V3-+H7J^=H\\4O(7.CXFF\,F!^FT.=AR')4"\$AX+4#;7> M(?B,.J"IZ)Y$3*7@;913P!5>_9>A7A3=; ^W$ %NX-EI)%7H9#Y-;E:,9,EM MB+0@4-$9X6RGU.:'9C3\:]DD>J6[$+5@X>7(Y:$5GE);>D!$BDK'LB@PJ%L. M5^@$X]KXRH$:';VP@%$/:-8K[BDIR-BB$"$^8@)R4W(3$9R,.\4=GZ,G:BJ% M0MIV/7X>/N\=^,9DY:V'RQ(#6;'T=HLDU8DVRFL.H6 MVY_(TZS_C .-"-S6Z3&BFI*LY %I'',29Q/!,<[!YT70L(N:,L+WAR,50KS* ME58H_V-8.?HIAIW 2.1-SG*^8DA4K&FC489]G*+LX.%?X:\)/2":7->5*<,J MA:^ #VNJ:-41F=Z-9.FK.W M3 .4P0T%Z]KF85$1F\X&1O)B>FD(+CO( R61\R(F;Q+1\)SR*,TFY(V]U7^G M7\J7;_*TGK6Z]"8KB6KXAH$(^+M2Z^JG"/8D8_S?29YJ@ JGN_RU-)"_R MJ MF'M'PH+9@$MI\BP3>#,VH(-"@^N+/H8GDZ&8I(W6/.^^W;KU#EAYF(2_<_TH M#AF\?O'N,OSR4II&VC_!'BAC@7G4=8DI)<^NDW%2.0:VG))$+@KR0 N#K" E MG!2YF^,%K%4CULKB19*)]XXAS2@MG8I'ZI&P>2JI@*33-C8<26YCG^V;?*_0 MLY-V*FX10DKWJ%%FS>@+C(P#JS$NDK'"VO_H5L!TI9T'M0C5I'"I/9[I:<$, MO9QSN[H"=[WD^#D5G%XYR3OW413>4B@TQ'T(PG1MY?8EYN0K'*OP(1@W FY47 >C(V[S(HVM;20"I]-#(Q[T5@ MT..II^\0[J)4:MW0E8![:4WV-M7DUN#CJ%BAW9H+WXV0VC-HQZDO"32*2X(# ML)]ABS%5Z'A0Q9[ ]_C2P4X0\DF-=="->I>=T)S;HD1EC:0<3 :#=DKJSFR$ M\3!8NA9+9>7,/%NETP/'J/;T)V[VE22$;"6T=\A1,.B,ES ?74/(4UKJ5O_< MKLZ6[Y-M]-:"I3LRI@\4]P-IMY51K_DJR:5PUK34+C3\NK\G8W(F)%'%^U%P MFNHPL'?B0M^(Y:H+AK8+/M.&5,7[SBA\7E##A96!U_V>9QC'2.G$Y>Y]W+A% M=,'&BHLDFCBU=UPL(2J:AYD7;:/DBQR3^,;0TP^2@BBAK9'^8E)$[E4%VC1* MI?K9 G1H\9SAY*C, %5*:&U$+;?Z90Z/.JA9]M"7D,UM$; <'-9_T4RW7%LU MQEZGUH8Z]]V5GI+1H$^N;$Q!;> V\/73O>Z&%PVE'L58;,GQXQLE"L8C&+1% M&*9FG75(@Q0$S6R^A-VO80K&TW$:5L]<'4T0E-7L=-V_0)QZ- KVV[6]:S.B M&=8-B!-+,/VIJ8!HA*DP 7*?'7O&Z8PKQ* FME[+P4 =&=CVRM\QKOHS">7C M]UR[U',!#7U#)M<>*TM* 4F!@5<-3N6X_J_"X#<8]B1GY":P:N.(WJ?BY:\? M\$G[!TR?__/#;B\LG/W*'C73,D]N@/R+#^1V&=QU<@F^'TPE>X\P_ MTLS=I_U^^?HC/ U\&.+W9L@27>=-P\+7Z;C0$ M#S>SOSNA7P["Y?FY$W_R[AIC"\,GSNJKB*)L&6;*+77F*(*&N]'94J3@(!H?I5F7EEC-+#";?;I@ M02#DF,MOZZMG76AF&6E17]P24="R%-ZAJ+_@E=FN-^V??4\EE6/3.G94(^R>@&9 M!AA'QC6*"W5K4W;^8AT&[YP$.O[]#_I&= L":S7]<]!NK2]RJQ5D(_T7_-^2 M;TU-$(UB+M&[FG:+2Q<:3*6C@7\5\/6P>@2W,F@[S3M?&IKL$@;:JEN,6;<( MDHX(M[UQK%R*4/903=G98?#2%A$08+.<>\:.*"I3, ,*)Z\2@F%RK0OO.A8H M&\%UX \DF>,_:Y1)I[(RH?O86$4HPFUP)PHY6L&;0I>)#5H,@P MWZ2NN6.:@*J%0^+-C:NZHL.=@'N4'[X'W3_)&O'-74.?07H0GH^,-D25GFQK8 M47AV?AR>')UL: ?$0J6Z^L/@U>X@M0'<2U8&XURQ[BK0PG[ M3Y,KBM(5"F>MB,QZ,]35AV<;XJ[>F.",#B\V,Z2FR#"[QWR.;;[7&HB/TU)3 M#T*/.R0%N<; *<8ZVGMO)1?J@E;G<;8V2VJKZ!HEZ"1I0103$W/:6+Y%W47H M7NLV3>_JXB9&A\ZQ<;736]8T'-@P=9I9-%W5"CC@D%X ?('S ] U8L-3;(GJ2TWK1R/3EXAI3_3:B*ZP[D3K&3 MW52'.6H"&8='W3%5J M9UQ""9%'I8!.#,;K)DS@4^Q5=^ZFB@"CVA4I*N)VL M:H:YW%VH#7]'I)2<4W&!8\,5ASEDW8+[H?\=9-%,(AWC O\K/QICTJ$37=[$;Z90"GU6RUXBH&D\ MVMS-H;WFEL-06KXT\"WEO5%;'9@@%8.#2C$)E4'Z]5(<\)%J7TVW*ZW5R[,7 M[!GL+$154N2P7%S/R& $7&9NIA[7 M\@,YFOV$L;Z:4*%!)_9]EZK@I1LON%J$:XZH MU#OEN0KB\=V#0?4.=XY5)SJ_R>:5_NA#2)\>I9!A._.%PSY?V/V[5\XZ 9K$ M"@]YX+%@%@$VYO,!::((.P@]1J,2 "85"B$#'MJSMQD<$XR/>-F"E8I-NBF2 MV;?@2_CFD'7:['>B;C1923E0UX9R^Q[P'KJ"!:^SJ ;KOZ!*1EGTR-&,"V-& MMJ\NJYA6L$%!*B(P4G%Y3!%#G"ON2R#=K:-M6D'35^_<37P>[CDWXVJ5F=?5 MA-L!1 6W/4&L*QL+]ZM"W/M(BZCPPGGW1=AHA66F>N66Z]Q/,!EKB";3?":5 MZ'"8&I[Q9YWILACX$]4,&PJ8@) O*(P1;IC[2O$ZJ>TA"Z!/='NBL!";\QX!L& M7MVM]R0D;9$"W1O"NJJ\IR08H5Z-:6,@S+ X4[\K)_0T-:\L'"+#-VH 1!,Z=A.IE9""!MJ;!4V";K%2NA5JSN/23FQ,G8Q+ M0%_6W&OK?^,7H3UZ [HU7M=:6FT8M4CDOOC%'..8Y3&3"V#:EQJ)%)QB"AD+ M*&:LHI0O6?)FO:H'DQ&/BPC!22:840NEQ7=_#0##FW#4782\K!(C#\S@E)5?IBF\. M]&'C&R\_#*=84%0/S[[>UDC*6'1)@-0$V:K-7W*I/,!4OF$YM0,12;E57!IL M"4$IH)@7!-@U5;?8CVDGZ4PD#'3W#*7UD!'6] M([\1:2-@ $@>AAHR3J@RY1JF\9OSM -^FJ$_E!4O!35#JFVN(XI>$J)AIBJ- M=4[7"-*01K.4.M'I N8)>GCQK/;3U%UBVD@8)%>MTLU4E_Q( J/*//1['9U% M/Q--LD+8R](#?!@%WF6VNDY>KAQY)&+"TYY031;E(&J,FT2(C/=MJ 2W1:45 M2:P.D-!#S*$HY8H>%E&2 CFMCN]P):GY>3['FY_:JW9NWKW/P2;#AV4?.X_9N=Z?P M_%.7J_XVN?'<;=V<+HS,_#A-%?$26-LB'G KOM)]0B,$28?P4O,8"A68LW(MVS7F3G:R2%IW.'^G?T MS+U-M.H#7 M4A/EWSR-V&]T2E?(\=1]?P<(5XK#10 "<@2%KJVYCOBH2M2$I@Z$.C4,? ;A,^"97VK_J@I!X9)V[:3-P).\ ,/4P5:L;O MD.70=#]DY0R<"D$49*J7.X7:AE91-?#R^QG9B) #%=MFPD+-D&P**8DT"(!3 M4&0ZQ1R8TIT]72;@?X7V3&TZ1&L+^082BA.\5=T"A/C"@L0I.2 MH.AZXM'48BFRR6C"\,0*U::&K,*[%GE; M9F@^XX%6G^'/4GI"[HY#ETL[PC -!_GT0.^#O#MT:U&XY3/0:7))?^M#/U,2 M84$]"0N. 82O/E3ARA,5+NF;YR(63L.FT81Z1*$&V*$G(%-Q%,OC8'63N8FY MI;DP\DZ)/);5.3=G%G[-B(NP6>BE6CUJ201YCS#5R^[PX#&A:)A27&J MGH_4$.7^II#A[N3I?)VNDN45+<+$=-= MI2G///PM71[C-:=[5Y=S<\F$3$E7RT>\4!5&_KXPMV M2(3KV&T5+?@+"5-VE7?!+];LO&N/7!C MMT^E)8BR!?9JU5">M^0OTC):YY,N;E"DNNH+@\SLEM$'3=/NK%3I#67Y7UNP M-)I6U9@ZSZT9$3 04S@B9A8Y'OS /4&$)4\[=LO<53JS:5:5R81RY!RB-D24 M@DH*RIEML9).))/!M B9;&](K6W22DK>N6LA)W3X\/Z&=HL2WJSU[9G>IB]\ MB^XC3@VB[7,=Q6XIG9_L;K2SMG':,Z4.N;$-OC0PADOJ(#4$?PAY9ALA0N, MZ P@7H1T'8$[.H-)N;Q\NFNB_"0UA;D.J IH9@EG'#V496/@F>WDX:>8D3GE ME;8MZU"2APM#,VK_9FI=^4$TM#LB?J:\,.3Z2!>+TKN/5D0'NY+3..IS&EU) MR&:$>[(<3*#MQ[I_/)Q9;?CTSU&RJ25ICZ@>,?I0MJ M[$1R$]# EH*><)XS:GXCYMC;[(K,R64:=ZYH7$'!YZ"8-\#]-5,8H?;OP+W- M("I?Y#Z@"D_NI4Z(VL*$K9U=B0T[A_@+S?TB:[>\%B.NMO1]3DE\ MRTU+QD3EO&V"+C@GI LLE(638BI&S?NP!(0^B#:JE89R>7YYH0='=Z7FK.4+ MWHJ7G1+-P*]POUNB?,'!>;I#SJ?-Q90I3!B@^#HQ#-MF>0LXT M7T5 TP<2J M)EW)3M*-(L ']0Q)C3G2LW/&D+S1E$ VX#//!Y:BHBEIAX0PV #926XMN,K6]310Q\MB57Q+/ MX+EP!.%?0.,06Y;=16=LTFTH4!SY=,IUQPT@$#D/#ABD#>!C$ V;ZL=JDV&0ANA M&_GAZ1*MU4#G&MO;"JXP+F@_EW_?4)Q\F/5%W/_#.3OH M"PV.W30,)R+U7EXX1X%G@T&QDE>]GDM,@ FL(@V1X8VLC<+OCF<2S@E5?99+ MB+"\+>.\X%1D&0H%!1U:KT/(O%W2:$C;4988P!VK:5Y845RUA'MH0JS<%-X' M@^[,IX3(&W?O[OY@JS+H9JCE#D?'Y/?+#R\O_TN4R6^DDZ0>IBJ1])SC#TX(2V;9EZ!)@\S'7CRPL:;TF"*1;]VY% M@MG"QJ-)0R6EH?+$(QAE,+9KY(MN4[QN3S!%G15UG1LSDK&-C K!-\Z26M*C M1JEJ ;S)N2W\N\KAMAQ?$[.=1PGCRQ"NBUEEG6&;(\TL5US1%VSC!XM?^[?8 M0&CSQ);V&)XD7:E@WN(ND=] NZ.Q[33XD<-^3,\%[WH>-0?>?55RG]W)EV67 MB]LKH6/,!0P#%$PRY]\N/62LJ. 07X&[<(<%9%MSP?@5LYBVF$^Z]B2DAH^W M9850&#Q? ?3 5$.AW-87\E!V8!NOD1N3+!E9"4V6[-LW- MKRMU13[\JZIIR9R$,B[>?53*=F9.COO,2??OY@]L32L862+A!WU$B9U=(M@% ML2)B11@=!G)QNZ\S+^FD;@0]]S>,/S.-U_"40>XWA,I+NG%38,%GX>EP%)Y< MG&T&Q;@]\D+%4P;#YMY(W#83@X/P]'H\T 1NL)4%_@M4JIJ2.:3I,T M8:*>RS35U^"*N2Y_2Y"53- 0@]*%K>=W8@P,LO0>G+=@>'R,@9Q9G5[1+6&Y MN3_8SU\R$MGPXNB(KJX9@VD_Q8])/X+_:=M,\4$CB:R81F,HQ)TB$57-'G[' MF# -9(DFB,;/LNT8IOE[0R!].,;DH*=1!HD<.GY M+<_#2*-.$N@ KT0Y):VW6DXIXD!E]#FC99'0FX'W1E YF&Q S(53$;@:E51JU1GN.@R 6@3OC)YK]"&;!%A22U'E*0/> M#9!Y.C"^+8^?T[&7))NF-54?V_I!Y^-T#!%T6%65+MOT]O,.:5D&WFLODOBR M?'BI;;=\-N504P%J*Z;8>B4 WRFOXIZ$C=YY)!4ND$_[6:/S@ FBNB!LS*B.PG!&QEZA3I5^$Z5X^"E MZ5T0$CRFDP4L&U(% M9J@F#AM)$NRF":YH0A4(T$27KA\YU(9)NK65 5MQ/"^17[Z*/BDJL"%"!RHA M-JOX2?E(O*X$4?5X:7OJNG]&L=AAO*!^!I42'[-.;]L*_N;MAZ"'S*Z!)TE1 M1S:WA-/B<3$\'-W; INS,JIII@9#AEITUEQ.O@S V8%E5%DZR]Z^.,BL=6E2 M,C1VG8+1^,<4*UT&9/U=W2 5J=MQ'E682M<%_Q51BCE8O'K@3DD/2TSFB0DZ M5MY8_O M@822)>=+MYF+KQ:V.&*A >FZNL*N'FS-H#/PF3:59]$/^.@-5E!]YKH.!V5%!K!VU#4^AW7&FF=#'JB MH\&G2P^L;GYUQT-:4[2AQ;L@ (K44I/XZ=AUW6Q17ZUK8[1?Z@XQ$1 M$P[[4Q6WF0(*5!ZR1WI/KC1-&&60^2FJQ&@J*D8(+KQ%L)87_-=(?(#GZG.$ MMAEXEHLP^ @_V?P4;1TR$FIT]7K&L&U+*P].]KQ&):(YP9P*;%=&?"N2&K.7 M/B-L!*Y4YV.NU0YLO?2?(*AD$]AAF4&0?N-RYE4&,A;8&?MX)_1_BQ (9)PV M*70?O*)B3_91ZHRR@+=*&TXH$VA+B8-!8N0>7S0^!$K6"$6X,6E#Y#^YOY;% M#G6%(RC!4ZNO\$_VJF)W[T?REPK]YZ?)CXS&QP/7;90%8\,H1@R@X*>%F%?7 M43H-D=O^1]%47 K$+$($/,L0]A)XTS_J-'+H0%6!\"9Q#<,K%D%BD2*E@3+XBBGM?1G,R0LW/2$1!!6%]85 6,-P-]GN4(%=;C@B^F53_ ML/G.O2(5WJ%NS-N%OV6?5@] X^"V!LD2K!51,[;]=#64A'<$%TIH9.7:P-(D MYA>UOJP@MDVN<_DF:W>[S1B:8K,@.@81)P<6.%E35Q MZ5@.:Y@*DN73!H/;&&/3"VSQHC#5"%W@R(JVA.X1J;NT=ZO4>T=\C1I<5IQ. M4-V]BDE&:+ 3R5U(-[G"!O&)$J *4XU-=]=RPY@PFN)^+N9\=IS@I;TT+9,- MDV2Z247BR&Q2?R$E#".AT8)IW\*T,WD,A[[!N!1K_#(!$;4?M/'#4!9L]1): M]BK*?(D^TBN@]=5=Z5Y"U9"V%4H;MES!49#$?WU27HQ'%^UN=H9.-T,H1EF9Y.CJGXXMX?*:&T^%X>*RBHVB\Y[(Q.@S>,9 1 M'+W.R\);PH "19K,*:(\)<@2SX7"H@>,T&%A?<$/E5(A'Q+WPQ/C'*?1K;'L?JS2__0; SLLRZ[SDB\?='84<6/>= M0_P,/)*)ZB:PX_+7OSX9/*&?8783_7/+*GY,D"\96_+>Y[,H:X[V-HFKZY\O M3@^')T?GQZ?RW],?GC%-_0$"Z4;S4OVL_^&N $Z*!@>^8H4F*PXF^^N34U2B M58S_*-?.W)&TC)DQOX1\O*W/L*&$>33U>$&GD@-LD$//CI]+'7 MANY<.]6+AZW,1?O*_%U%,9X)C!S\O(Z\?,O%V*J#TD^\GW@_\4Y/?%NL_J_7 M[ +(4NML2ZN>MV7VNF;+MOR>RVZ9QV8O>&I^'IR7!+9K='N[<)'?.Q8 *< MGR[C&08^:P%>[ZUI74-&>3<;1N\MZG[B_<3[B>_-Q'?)HK[$+$_6&].].;:U MNW<>GBSQ)/>;UPGM0A@9/[UQ$OC[:44_^=OSG%IWW\31=;[M=^GVZ-^=-2&V M:N(;W^_C\.+\=-MGW6_W-NKX#DSX191>1<4B#"[3,?9*A<&+*(OB:/NN\-YZ M[K(!MIG=.PE/SP=;,KD]VKQ-*)H_HD)1V>Q/K&-U9'I?;>B7>,&4Z\67C6QZ"[J5YZ2]JHH*@,_EM=8="" M <0Z=+_VYO-^V5,;,Y]/FY1T6S?K?KNW4=%W8,*_JFIR?8NX.F'PSXR@;O\! MKX_SV?;=Y+T1W64[;#.[=Q2>'O5ET)U4-]K.3;2R=UM\ZHWI[=ZXINO MBCX/S\[ZH>G:,WQKJP>\?AQ45O27=4Q?3A:($I446A MQGF6J3#XKUJ-U>0K^E"Z;5CUAO163WSSA7FC\/BX-Z2W=>)]7<=&]'N2CNOB M*B3BD=^)B3.-LK@WJ7NK; MW;S0,3T9G6S*[/=J];56P7;YP_CUVD*D\*NE1?PU&E>9$D?MM[.:6_3(>_V?@^/P^%H'5* ?K\[ MJ.,>4O_Q$]%?FM_'':6C_4,A*6FB;A2SJ2/WJLNX6B#I>5(96O4*YE0@V?P\ M1W+Y+):/((]M H-$&NVRGL_S@I\UJ8L"?ZTIO(-,J;AL(T,>%S]Y/S]T,>\Z M^VLM%5AN34!,^N]UH1\QCZ[4P;A0T:>#: IO_#E*;Z-%"2_ZZ;J0:0C'\_'E MVGYR>C5Z^&KRZ)GC1ZM/FO05;W1._(\@*T M;->FQ=Y3%MM'27UT&/RJKJ(4&35 N^%0N\],_;K(9T&5S!2>8?S_,+A5=+QG MX'8'\ZA@*ND\B)A=)9@F*7.57D-BTP& "$LN3^E*S>9HOZ,=9 M5"';X+)RZMI._G$-&X.;YZGV"">H\/M!,IM'N-09ZWO8@(Q6$)1ZPD3?A2KK MM"*^;8=B'+9Z$I77 1H;L/TH,%&V (4_@=_558T,Y+S-\,FEK4_*H,[2Y)-* M83]84% "R ;!]:^S"6]MM<#WXA5T%?%PD@J_#<,K$[R)>#X9? /N)%6BX,GK MHQC,$A"2HDY10& 8\)GH!@XQ?B^&Q4CS.>WV)*_36.9);.DR_NNHN"+&]$A_ MAJ3;63W]#E[%PP#NT#@G8;I-TA0%&02\IF,$2Y?D,5I)Z0+>I3[#+F:*5EV! M+. C:8U!8,*&\U[#XH!_T(%HDV8T5N]>?#R_.7H\OGHZ-7ST\NGK^Z>'D\ M&IZ_.KD<#DZ?OWAYV;S5]^R:/#X,?D-Q_Q!-%9SIETDY2?,2EK3[E^7O>85' M+86C#>?O#A$Y>C5Z\7QP<7(Q.K\X.3L_/[\\'IZ]?'T^/#IZ-7Q],7PL$=F, M#;R^ +P##X[,+=3X]&XV.!^=')_'9R>GTT1:F M(V?G!,Y.5'Q2%2F^]^HJ*:LBRJK_^#_GH^'9LS)X 88/Z-17_ZK)OGF/=A4H MMP]5/OET#4]7!3R #!I2DV_*LD8*N+H '5>RGN;O!A\4:'&^%@?OP 2;+#HO:G^W6X:V MI2AB5B#H+J/=6Z%G#,8GV^B*;>]8%@(T,AJL8+D6\*GQ@A[S/(]@\X/@]]SY MG'6LYU&"_D5UC=;R7$TJ;=KZKX=5SMP'X'C@UD@FR9RN!_C26/'#M)'+'A1' M^-C@#8)+<#O$(8)Q)B4;Y&1.SR/VEF'V]C7D^,"#P6?"9X(G/BD4WFEZD6AV M(2S#^$\9N[6>@C2ZW3VIO_NF[?PA>)-M1MFBN"Q4!/YPAI?R2S@O6-01' U1 M\PXO-O(2C(7$"1Z-"H[/7':&8Q>HA%O/\EU&_444GT['P\G9X.AX?#J(IM-A M/%3JXG0P& Y&^VZ[GAZ"I*=PSF%#7QMG^V5419T7>]_O6RTA+XY?/3\Z>PW> MWLGPY.+LU>7EROS\##>?[\^&3/)>3LD.VKWZ(LXF"LL=8Q2E"7>./0 M;7:91>FB3.B$6EEZD6+SH^-II"XF MD]%$3<_.3R?CZ>1BM+][\^HS7% 5VBL?ZMDL*KIOJWU@!QK,IK%*\UMT_TJ> MFA,&3#",/*.5,&%&O)-*OI3\7/A7#4=?;_S(S=YQ>!(V\B08TOE&'G0(#G92 M>LL+/^(EG,$ZE&54P*/@SQ@@)ZDC)\B<93% ;4@XI#F6UQ2J!6NS4!&9L9,\ M^[/.*"G%)C('G\* =,WP,@Q0NXP&S]XGY:?@=32I\J(,Z7?#9_)A_>DS\^%' MU$WZU?@!BJ)_,3Q-N8#)A",;F-G@\'9'\NC-+J,U\NA[G0[?L%*D, 2X8)Q9 MY92)?PK..8T#HGV9936(XGM%)1WPI6F-N2R*CH%\@EA.^3QQQFP6+0*PALG' M(\$&@2TD":M30ZX^F*/SF:'8DWY^?#=P>2F=EWSQ9G9'(7>K^\[A@$N4N%YF MHM)4_OK7)X,G]#/,;J)_;MF^C\D,3O7OZC9XG\^BI4JNVR2NKN&?,/UQ7L . M8(U5&LU+];/^ASMGJHEZ8FI3X2.XN']]P@[*BM)5?L=H^,,S_:'FW^[ZT\EZ M7UO]I_--/W!W1[_Q)]YO]-^UU^0;ESZ:(W3TY.ZYRO'4RFG^.: +/M!*^%M7 MOZYQY;7$M/X7 S6O[@[4[%>#@]6I>RD0/Y#A _?ZQ[PB*^%&9;7:7+E>(F<4 MM5@2LD==AK\\1E?974NPUDQ))KZZ?7!T$5XA?G[XWCO8)='MKYS.73D#N')&@_!TN%$: ML/[*Z=2YW>C$OZLT;\-]]/T45W]9?:_+:J?NH\<]I'#;#(:C<'2Z#ICL5V] M?ZGTE\H#+Y7SPW6H1';E3N'];[M9=@DUDH-MD[RD3I5R!4[F]X[,/JZ@GY^& MQZ/3\'2TEKA_8;I;JY]W7@UW3@Y/3P]/'G&BW8XM[8"X[K */0,5>GX<#@;K MU#?U*K17H9M2H1>'33"Z7H7ND+CNL J]""^.1^'I\*C7H)T2R1T3P^'1>I'D MSFG0#?CW7:ZR^:7(RS*81<55LH+VY_ZZMCN)^^.C\&1P&HY.UK)3^QAL9_1N M=T3RZ&@]K[\O)>FJY.ZB8CTZ"H^/3L/3P49EN5>LO6)=7R0'AQNM[>D5Z[9+ M[BXJUN$@')Q>A*%C1/^W3[_VV:N=$]UA>'HT /^_5Z'=DLD=D\/A MQ>%:Y=6]"NV&N.ZP"CT.S\[/PZ/A8Z1?>PW::]#[WN2C];S[SFG0/2\ >&O\ M_B2;Y+,52!L[&5(]"P?G9^'1<=^(M=NZMT,B>;0%O59;9Z_NLN3NI&(=AN># MTW P6"N*U2O6+1+/G1')P7KQ@%ZQ=E5R=U&QGH2C\R$8K'T-0->EG%.KP O?KJU9=17^N$8WKUM272UF'U]71X?A:>G7T-Y]'VB-^/^RE^ M71.YD[/#K^'1V2)YV]O,]!O*1P=5]/F1:X Z%&\9A1I=>]0@+%/W/1J?12>G0["P=DW/0J]6N_5^B.J]F<%?Q_5 M^O ",_:]4M]UV=X7>3Y[E): #BGU_2@&^%U5=S8#/&"WCV"WX[P>I^IQ6EV^ M&[W,?6?Y'4L>P@NX?@9G7]^)VS*]K;UF]NLV>>SCM:G:VW5"\?>>Z?9<#WN: MFMPB@>WO@Y7L-N'9:!B.COKKH#]=W]F)^'IRD/XVZ.6UOPV^KI/D["@\/_YZ MD(G^-MC7T[49II[!!A(%G;@.OA [^JF*8/SF]_1?9S!IDJF#:T6S&8X&/S2' M/SQM3'$ /SLS^+,NJV2ZX%\E&4AJ11^YO[@V9T6?EX"=+#K_$;_ZR?\ MFUL>]CA/8WC!ZSI-#_Y7144P&@PO@DD^FT>%BH,J#[P_-7Q&6IY@HM)49OG7 M)X,G]#-\:J)_EG$W%Z)ML=RY?4QFJ@Q^5[?!^WP69<^"Y67Q8WNW25Q=_WQ\ MSD(C(GOO4" ,Z\G=N]MXOW]NC_FM7[%1*(WGH]'I@Y0,C/K9%X;=(G ;%; G M?WN19Q0]CBH0F4+=J*Q6P54!.Z>G\E6/1[+;'S;R))3GC3SH+\/1Q>%% %]( MDSS;R",/OZ2$^L/6'[9G/CG0!@\9 D=OVR$[/CH\V>P9"P)O^>:JF,"E&UVI M()G-"S ;XPVMYM8M)E+9;&A(^50K^5YG]3KK/N->A6:^0?V%T'A;=N3^,CH] M/-ZH_@JB# VL>:%*4%N;4E8(;;TYU5 ):_VR2=AKBUY;W&?#35LY'Z]5H*93-:F2&R5U([2@H(!5N6U*87B\8:WP.+8#UI%LVG;0YD(0O(J*#.2^1$O1X.7KEZ]>HOJ-'C$V[ZE>\YG-!>N=\'R6 M%S/] 3<\3V^,U21'[RG/X'.9@O?\0RV"YW4)\RS+X#=5%4[_NEUDD79!-X-GXK*NFAB23UR1H/NJPU? V_K(H"+.KI2,W@%:(RK.HV* M=!',\BRI\J($RZ"H(A#]J9G\3":/.KHJHLFGH (K:5[D<)' "H+ZR>&I8[VB MT15\O<3;IE)%!M^_RJ.T)"U:1<65JLK#X \5C%6:@+Z"9T45/7"6XY=F\QS> M#T.3M])+X:\O4%5DBR IK7)[KJ8Y?.(-ODB551A\C#ZK,@Q>HK*&H>.FA_3B MRQD\-?DW_29X2G?XX-FKYV\^OKRD'X;/?CSL_-[R?'"%HB 305[>1F_QY2L8 MP4MBV.%KEX&;K:-2, _Z*/91 5PP]PDZA;T M^7CA2%F(AD=:X_+ R/ 32S)#0@ #S_(JB!6X+KA( >Y5\B-M/\A%!*^7[TVB M.:7D9$/+JJ@G%0H+[O73!+Z35&HFC\7+#Y\+-XUY0!PM8*<.X/_T5,#M/@Q^ MLR>CQBB++,_3X8\X<;FM[E@ &$M$'GQ25OB0<03_"H.G(_Y^E$[@M%7D5\"? MTY@N%HOSTZ$?Z]3R-LHQ>5Q?S',=FUY1/HX*Q\6-D MCN;\P3=K+XHTKF,XAO#P8QJ7NHG2&H=%#W+W$U;3.$.9<];-FL%C8?'ANU<) MCI:6_X0>&I4E?@'GER;T-)*CFZA(\KH$842U6^+'0I+\#3ZD:\9 M-MYB1VG14")'9\%>C>73B6@[[>*'^&!9^HGY3#,0L*S==-V)_?FA*L]1<2C. MJOA:A0:F4K.VFOY[75C_]$H=C L5?3J(IO#&GZ/T-EJ4:,M<%X\PC?.'S>)\ M94'/JE7OVAV#\9%IGJ;Y+6D>BBW0A0.RF\,]DR9&!SD>)^@#.0>HRS9B"^,! M7*@(#!:\+&*X\R=J-H:3>#0,-V/^?YT]<"^/WGGH%\UE]ZUB\+KR,!QP<.-! MX9Z[0CF-T7+@9CB Z4JY$BQ8&LU+];/^Q[-FC9&-_IA^V>'QD]71'@D.P2N> M+,54Y/UW_.EHO:_=\:?1QI^X\9?=->G[/?&[]OI]K[;MH^] M+:\%O(6.K[W M9S?;Q"6UY"I3E.+K2]FW8*6ZB@2P@R+UP\HK]/'?#08()\_?X5W MI\+[^D[.+5BI7N%MC4AMN<+; Z#-EH5!/_3-N@ 0ZTSXJ^%LOEUKUY?VN:. M#SV>T!;9(-]NXMN)_- =0* >Y>U[W0SK63%=O#;6F^GW!XUXU)W;M?MF>[V7 M7;F,UL2=Z/9=M#NP="UNBJYBV3G"E(O3\/1X'8C_K=6>O6GSK66H9ZOKM+1U M6'L-3\_#H_.>;'.[!*IC0C0X7,?GZ(;ZVL^@,E4:?VV"I#ONQEC\'SP38E6>Z6]A;*_.TI[HRG0;BCMG8Z/,C#)5Q_G#?$3=:P18 /4 M8-^Q(6!X'IX='X>#BW4GD?.NB'I_O:W;0ST8G8?'9X]"6-Y?;_WUMO77VW"+Z)FWZWK[7C2= MFP"EY!_QPRN9.5= ?_^S5 1-J=&1=Q#A6X VR^N\3N-@K!B/&"1/Q0AP^BJND)TSR(,\@)^-0?M O_ #[: @1LT8WXL@?%:G%]< MW<,@>&-0G2/]34)7%AQA^U@77I=0>>D)A&HK,\&'^+/!D:>$<8SXQ 1/KCDT M8=@6;C>D3\[G("@H[C0[A!+/*]"?WIO-Y. %R MGZ?T^D5>NTNCUR5(<-JPZGDJ2*Q%VQ;S(\ND">F<72'4=YU6].I"(1H[C-UN MR<[ I,>Y8LDLU#0E:',/9ES#X$^B\CJ87"-P?2E+@XLT+?(92$ %XE7H^6KT<7%JZ/AV?/+B]?P"]B&3O-'M-J0'9R'C\^'AP='IZ<38Z^4H8[;,GJW,S M_,;1ZK:0L MV*\ ])9AR7YK6=C3M(/9]9/OL.O??(^#30+S[M+N[Q0D^6:$94T.AEXJ=ETJ MULG@[9)4K+0/'LLL_/[&P9ML4JBH5,%3L!/I7S_V0M"KAO["Z*5BS0MC/YOI MWA5Y7$^JNWF [F]^]#7ZNS?Q?O?[W?_6P%);M@A[._%^]_O=W^?=WYW>+C#U MHB2KD/.]0LKZ/ NF23K[WA@?WZMX_6O&O!ELKK/PZ'@8GI^NT^:^M07D73_O MO>Q_"]D_/PF/+T["H_-U<+][V=\%V=]0"\]:#0S+B_Z]3_&>IKH[)FYGQ[VX M]>+V[<3M;"U&S6Z(VQY$VY_\[8\DB_/;._RL741M'P[!L#L.CX_6@HWH'FS1 MKH8^=E0\P>T>7(1G/:E YZ5S5R3RY&0MB-J.HV;UDMM]R3WO*=][P>VBX)[N MH\;=I5S66^P+W\+2M\<5VR-$*UK7L_K";+?6A-T!M=EA#HY1>#8:AL.+/DNY M72+5-3':Y5AF+VY;)VX[3/K22]OV2=LZ*+'=D+8-YVF&V^E.4 ?R(QC5Z\CJ MRH7L,CKL&G0.VXJ9.0I'@^/P[.CKH3,?L"@=A9/=VU!8KQ?V3"]+6P#Q='WO"3/UB-O^]KEZ3#@=']F]OS,G)]N@&ND/S/]F=FO,_-- MO; =.#-;A:6FP6_/YP_!.7Y<$(,=F_<^S;7?X]V?ZZ.FTK=XWOLTUWZ/=W^N M>[G'>]#T1#_Y$&,?5'&33%0/,;9%Y;5;-O%^]_O=WV>8H7[W^]W?SXGWN[]+ M;1D?\FEU&Q4K;+QO5]:WM\A*1^'H]"@\NACVY?K;<\)[T?\VG2HGIZ?AQ>DZ M!3B]Z.^"Z&^J4V4=Y;E6:G#K,N:]N'US<5NK4JJ7ME[:UI.V=6!ONB%M>Q!< M?_*W%W4UCK)/P:10<5*5V^13/Z[DGH6CDZ/P=+A6>74/V[1%*G,7I?,T'%Z@ MA/;2V77IW!6)')X=;E08NV$#])+;?I.5592F M$9'CI-$X_UJ$L>V3T=/P=#0(3T;KP*-LK3VZ SJPPR)U$HZ&P_#T:)W(4B]2 M?6C2YEW6<5BZ<4OVXK9MXG;29_EZ:?MFTG:\PWAT>Y%W^5A$20;O>V3(X2YY MNQ>#\'3X32$+MM9:W.7HS#[*]O'P/#P>K6,@]++=)=G>E M>\GMON0.U@,]Z@6W%]SO+;AK(=QU6W#72_;TF,]?G/IN0;@^VH0W5!D3GHW. MP^'Q6B;3E^S[3@*R[OR]TA_9;A_9X_#HXC@T'OFJ _1H)@!P1].Q/"VX!U^$5TLV^90EM> ML >(T;:B9/8BU8M4+U([E.CO1:H7J5ZD>I'JFDAMQX+M4,*.?O*!I?L,WIZF M T87X<71*#P_?Y02O3X?T$>/^C.[Z3,[@#,[>K22\?[,]F?VT47XO,_A]:F- M?1#TP6 ]\*!>TGM)[R5]-R2=0@<_5=$X5>;W]%_Z#UL\]F=G;&F2J0,=X!@- M?FA.=7@*A'S*,K=3 N5/3I()K"&W^. MTMMH4<*+?KHN'F$:YP^;Q?E*4W+5JC]HI*[\#?R1_UF753)=\*^2#%0,B.SQ M@R)3K5LB834CP,_5)*I+%7ZBG8&A;"$#9R1/,Z#NYDQJ2 MZ.1&;]>Y] #\N,U^K8>L"=KZ!B7WZO?M42S2;*YFU'XF!(6>45#P))[-RF__ M=@;.S'LUNTGU?LJDUMJ3#>AFG\J$6$%6Q+B-"VLSF*8 MAUB+P]/"B=K5]:[35]CU%]]CK<*:^.P#;7]/$NJ?F[#WXADOAR>6MIEPHI@P M4L4NJA G3A7WZ@>'4@M?7SEXMYAD<93'UD]*3S2O?AZ)8(2&46",5+&GP.CG M<:2.(SAKKNX78HU[UVM@>57?V_9^ABX9L E%-L+[*$F'W;JQ1F&?*QV/;/N: M;$N8#3BW&>JT[MW(MH-BVTXG_HK$C/M0=_3U8*O8_['"XPE2/F$]J/_8KX2Q MD>:/G>;A^3Y>EV.F^6/J?N==)XOHZ+J3864F2V +N@_I]E9S/@+('#)-(1MQ M:6.\CPHPTM2 ?"6'I:.?Z%Y*Y%YR\Z"BX^<33>D9&+TA?"3T-I+;(,A-[M7< M8QCD=A)112]:1-/GV@0#:NH!N2TALBGI-*;66XWOF#TR1TF>U(:$V8)UZH89 MR;-OHGQ()"G.]^G[/J ^2&.0YZCI%Y]W*NO[1[\CY8Z4>SR4>U0!%_4^6<0+ M?4@J6&7IS:XS4L/VE'.;0&G3O9*=>JN7'@$(#IBDJ,TQL24:8R_](JF!D='1 M."?WMT]&HGMQ[#KG1T%S([4-@]KV2F$C"?B-U#8$:MO/-!@&M9U$\.6/ M:)DL+&>N*'5R0D=@D VDL 7O-*N[MZK?,3M9CI$ZH[*2GNA(DL/'",QPB Z- M$9B1VEZ0VO8Q$(9!;2<1@?F@N]6?CF\;46)+.,9=A@Z3G;5H&Q#M4DEMOE>) M[;T78:3MOJD Z+7GRCO0>>:@TK/O6HRC[3;?]H%QTZY(^$>*^&.IV4>:4## M/EIDYMUZR]TOZ3*:'4#KVX=X!]:^\I$KT,]64!!)6V)D"P$/H?,/LIOET4N: MD6>'S;- \2P"-H-[M9X=>7;DV55=\5&R4,2M%HNH:QY/XIL3,M>7#IMRZ8HO]4_?)DOUX(FZW\K.)SJUJ!9SRGN6M6W-5*%I,LCO)XVLWM(3^G/W9R)^LRS;H9T_(Z MMN[B*+-BM7U3RX\G\?PBSBP,;0L!*+L9[KEE;:YM%M]D<:XHIJO5%>R<=+2Z MZ:65KC)KJ;U4]8"'M>3GUC^2Y76RL-2?W)I$R_@JS>[L9C99.C>3O(F2Q=*Z MR=)E/%DFZ<*Z3&9S_=[LED:(SMD G\N39 /-!3M7.X]F<=X]1W#2V4)'BZ[& MQ,]%MUPZ21=&U$9ZW0[&K/EA ;*S]55#$IW<2$-%?J.I]&L\NSNW/BA-*IK- M[ )0KK+T=GEMW4:Y-57+/5=D/;M3@%EC16X9[(FM_+]74:8W1('I5:PW;0U@ MU-9-K?16*1CM7T^M:3S7:Z+WT:!4<7FN6.B+?GYUH7Y*>:D92Z9&N[ N[BRE MP5RK55V[4 ]GL3*[IX8Q4EYFB\U;VC*S>(KM49&:MVJ7ZE+E:RZB*^):OT,Y!7W!QMV4:)U,5EFF M'ML>D+F?_LEEDJDEN(YFE_HF9O#1Y5+Q;+$&Y:JIX12HJX9>S%01_&H>3]5P MADXJNYP+G^/L:S*)*XCLR+FP<5>#QHH]<[WR:U;99:R66A.;[WQ4^M'E\E8K M4-%D$N>YK;AT>1$M_K(4[TZ3QIPN-JP6BXH X^R-NK:XFV+]["HN@$;O^RJ/ M*Z'0?LB&>:BOG$47ZC1JG6:1>5^010DV"JC4^MR]26\7ZE%K MUTVTI"XUK?5'9$ISU-28%ZNC&2?]FDP+/C%W;5!I* M[\9H7\I6[4:H;:]VYRH7Q.>L;SJ7&A,\A!-IM^JE.6#4O;K4O08NCN0I;E&[O[58UNU.[(#\'IXHSU>(>R)]% M^Z=;=3>D$61>RZOU,,KHQ8K4TL=S1"O=^E+9;D?:&\([,PD']C>G&\YD$L7HD*Z M9:*6>MKX,)>QXM)EY3#T"@_,__Y? D'^:]YX5Q2G76717-UA=3,S?N,U-W)] MW22ZB2;)\LY2AI!AWLY J:-0T.#M.W/R:9VG*@;ZJ< ZS7=5!'&2SI5N%D]_ MMJ*E@4SO^SZV8>5$]!C2C2=O<+"Q2Y.LN:4Z\+#)/>V'?4GF2EJ_5SK^IU0) M@8W,Q4?Q68NO"JI\+A>=_88WTSS-W^NLNL5-=!6_N5"4]-<;$\%X&\UNH[M< M/>B7ZZR<>Y?3$$^;A;CWN,GWMJ8K8.L8QUAG'J+1OACM"V5?.%--J7$C^\JE MMLO05BD*[/3@UKGC;#A.;3]JGVLTCI_$DS8P^]G:A M*% ]QRN3##YK/\_@YKVYV]5L"J]5.X3=J*QY:=$;1C7O%%V48=W"Q5@;D1_7 M?E3>3M]MKM!6CZ?XQM;1[#S5V2OEI5D\,WBL[JR=E=>ICFC7%]E6?IW]OEF#2B'L/(4==I>;-RPK8T191^;K#Q"<0TM=/U.[WA&Z=K6R&'3E:CJWPM%M\^Q] MO6KS3^=J',;]RXY2%-CAR>+:"[457]=NQ=FL/ QG#HODJ[F6CO\3Y^O+KF&K MTJ?;P?,ZP;N3T9XD@;\]N(#;EF>MAWQ7"6B/HA3C[6="4-0?*>AG$L]FY;=_ M.P-GYGVN0[SE^T>$?S9&>YM,E]=O)3TG$ E" &9,MFK8NSNJ[EI*IX#OG9_64OBR'X:.YXZNV MH'NM4O[\OE+^:BX'J<5S;YF9K0!F-X5<_ZE5WF!+0NQ>EI/9]N=V<#C$6AR> M%DZTWE:]Z_05=OW%]UAKL%YY$*6J@K!C74X2[7$OV'Z_,F0'HI>VI7"BL#!2 MQ2ZJ$"=.%?>J"(?2#%]?/WA7^?Y_4JJB>?7S2 0C-(P"8Z2*/07&2;2SK-)N M7H@K[EVJ@?5<^-Z.][.@,9*VD,PFHM-^GL-LLG"RO;E&MAT:/G.81.VITZAD-TU_L,V M#G?![%[JS8? 6H.F::@31FS&=FGQ^5( M4P-RE!R8COA>MM->HK-W&N%(;B]-;IR=/R>0/I+;2&Y/V24!SO>1C\,@MXZ# MB;"/5L&.T*HI2+:/&7B(3J)'$L3X7L_S808Y"+8I8#:B>WD-]EV3,0@R**$U MPL*IP0+&-L'*= 9TA(41%@Y%^P/QJ>O#ZJ^Q/ /VN8\\<^H\@\]?5'2,/#/R MS.!Y9C]/S"GSC/'O_&+J(M2?3P=:PZC*"=\J"C*@6D9-T:Y#%#02YZ"O]8PZ MZ^ML#ZYX9-'_L^M^:JQ_O8YT;DW7E1\W*FO6M7X>+-/3PPH[V^W+XO7R?#>[ MT.TFSO3AHNA*77,;9_%VA^7(4DJ(FGIS95.I6'U=?%G>K6Z,K4M4_]3:*GXL*@G-=)#>N:P)N%SPN^D4KT6#-U!9E:@##*W2]N5E5%M':7AP6 MNE''T#TPP6@?!B5UJ+AO*"DZ+:Q6H.3!VRZ?7$6T77@]C9M>8?DNB&B!<"FG MB@+M23K-+06.^:HHEZZ@5WUMF*KZ5I>&W0'NUPHKM]!]#=23[<9QK1*O:O2F MEKLI^U[>K/SA5J?=JG]$WE'MV.'U)2[>ZHN?VO#@0RT%@V\W\2(_@JX'IG># M(05%,'_%9G)Q.;F!29<#5,+OJEZGYKJH[$?0+P0TF*?PJ][S [1K[9UP9IWU M7U0X/391>B'1O-FCM1&DT;*P9TQAT,UBZX65I,3GY66K.4J#=I6@JSF@W3PD M7]WKTDUZZ]3JKNVB/<3>!H5XJ'3"CF4#)/TKB0V[*].M(&+LM/=:_K:Z M#T?3P6W=%=>TU$HGDY4:QN2NZJF5+"YU_6EC;2WCR?5"/?>JW6%+LT&43:[- MFZG:SUEZH\VBIMG6XR7'MB&FX/52?:&>KDCG,H[OZT>^F"C$C+*[>WIR%49H MK#3/8B:F[74RTR,IA[#953F+KTK0UPVQE^I69E+J3:C6PX)@6\H-N._J9CK+ M=.R[.E##_-U"65BQ]27Z5EGF@]?&RBDMU91*[6LM*G)O4,1H:/P<_JA1X@?< MJ%7GEO5AT?P (?,#;IM;_OW\\[EUI6-N"\/Q\2*:%+T#YPI!KM7CC8])#6:F M(:)N6C2?IQI;L_@RKE3FJ/!^Z;V8K$JX_+?T(K> MFXZFF)C%1FK-8_-\O5;_%BU6&IK+(*.:IYGH)N(V/VCN^>C@E[ZQ$7/=*#[= M-7KM3E,@72G?):&UO;MZD9OU+WIN[>K=998YBY>K;%$WE,R-0#6-?>>U-U7? M,%'[6Q#Z),Z642'-B^OSBJ@V6&!P6+4_4+^/EU:!;(.;]"9!Z:F4<#!8/VE7 M/:)_H.>XX\"F!M:-*$I7SM,?8-?>AOO[_4W76_45@?9I&9W9X33Z[?]&5C+] MVUDN(0V@Y!(CY%.)?2D#]8:[P'&#$/FN5D.C [+/6M9@KUKV_9'\]RJ9)LL[ MLZ1>=*,Q2.%IGJZRR1&$9+Y<5[1T9Y5S,O' >MI5 ^/&@,QB:Q+EA35J7L3J MVJ_1K)9,YD.=R9I7_9 -\Y=I'4HTG5N.>4HG[%#A5I'KVG$*P6UL74?3!^;; MU2Q^T &@;F'B'X4K5>D'K;"J?GT=?2VW,--3R1PORSCX]AP4 MF6DZO;*BKU$R*WIW57MG!K>(9@HSKXSW6>ODEZO%M*#:BS3+BIYQZJ,X,_9& MLC1VB5+4DV6KD;@9ON:#RW2RTK!KS!.SP/KW:I#5 ZR;-$^,QM90N!%2_F^N&LIWXO&2%/;K?!:BYKT\C)7G[VFE&TE M/!TCUKXSTQL&UJZ*)NCEEJR/^:"(B[JV;0<7!6[RE[I94=QQ1^Z77-'.@++( M:*G]D3L]CY>QS@&-)DI[U#JKUBW*J7YOWX\1K<)DH4.>:YQ_W@T!'0RM+G>, M>8 <%"-MFLTZ#S;LGO JF(\>32O21=&4.#VV!2)%(KDU^ MQ7W?L'T7B/=1 H MG7TUYR?5#$UTN/AY=)7%19*52=G2R.]&B[_T%9_539S%,ETD:9&3V[K+^L/O M3(Z;#C:7KBA]U#-:1--$SW%UD2?J55;FQ^VZ?7T?I9&NENKE_Q32L_:'[O0^ M%R[L!_1G<*41$HA['^R%'8="=L M.LM>H>>THTP1LW#L'( ?-R%\(#&R0>R\;2U2ZR*:*2VV,'[3U5)CQ-2DIRZ* M*(=F_Q<^88C182*Z6WBOHU,*L9784*-(YT4:[]=8J?7F<&69LM;ZK#CJ602S M3$;(JXQ>=<5-=%?D]E[JS+/Z M#& A1O2-U=!6F=Z=0FQLC3^:Y6D5Z3JF]7&!]5\%'/ M2%<0L'X*W'=??,=2.UH%43245S)!![C*3+Q9JCKDX\EUH4^TJ*/X4B>MZX6:&!D8:>D5:V*THJD^A!R7V9)%,+C*1;M0 MPC];W2PG=^7S^S?> 7#CXM+&W+X*%1QR-%L-G-N4XYOKU6Z'/W)KW5*GNCHFO6T]?;.DM2 M76@6VGA\3*& 6JGW4WWPP_I)YQ$C\*OG^.85_/5GZP>RT^[8M!B6UUFZNKJV M_K_/KE?8!,40RY.6>UH$B@FKVVS6ZZ '4.=&;>KM1T&^T M(WRQ6,TKJ^-*(;;BZ[@1'-KI9P2K 87!0-GQJ&O59C^0UAA*%H90A-0/,/6 MY[@48NP2Z6$,72I.-ZW14]=ET62Y4LSTH7%M#MY7VSKU8"SY26N>;1>NSE=; M94II4:J+452G6BE;+ O?BN)C'?A5,*A TF1&)#V 1HG3"?FSR%1$::NN;6UB90Z\SN=Q-BD<%MH1GRZ,>AU?7BI5D_"A*5\I(NJB4QH(! D7VFCS!,DS+/;7F;OBGR MK)6B/?P809ONC.9NW$C%JMY'@R:SME7JS*2&1!/%JM/2\#+Y>+'2I6>YKK2F MC =D)FG.O-PI6DET6?XG4F9"<="J=4!XE\56 M$8>)_KQ3'UKBH>QQESH.!X$KJ4-=XD@BJ.L$PB.0 P[1"<-LEICJL9:CMG6U M,!O]4:W\Y*7=TH>@^7^4J:?1-+W1A*1]INFJ(.%RKC?E7(N33/IP<)'F^Q@" M+%FA,;#,Z;C?'5T&RO)*$[/T[.YZ9(EA15IQX;*H+'Q=>2JY5!\HW/K7:GIE M .Q".[87RI:ID#N/9]H;5]K5)D"E1$#AD\U7\YN&B]4.3U:EOZ29C4X'7=^\\-:W!E0%;8OU-AJ3 M]GU_;\4'6%MK*R.B(0J]PO-4J?[U,C<+9D1P11T[22$RD0&UM3,=!G\[N(79 MSF=Y+& Y>L:&Y31=^^GJ8JDD305?1X!9U_'"BK]&LU74_T3F@^NX7 M4>$QU$S"7UBS-BY)?^6I6(*565M4&52@[TZ>+%',NC'+3^(P7:^;? MCA4_MYQZG&J5:S9.:B$P58BJ-EY'^_*\WO?RK,E2>Y8C[738O9V-?W7]]VJ. M%]4]3&FN8B9E[8NV[#J/&Y4'LPR^J&&:V7X&NRN MCDYI=M.E=3+U6E-NA5V%L7JG3[FE>1E**1V:!88-SUS=7R%X5_M!/A5+-7P= MH)E2N?O%F=965DN5,-D(/:TQU.D?C6_(J)(:" M#J,Q^+"XVDJST+:59V[VD M #K^-BG%0)F(4KIP-.8:Y[:1UL5=&X4E-?4=S"]-[9.\D)CQ@\/3SB U+J4. M?S552:I'9U9ZH4R"6*>U[/ 1F0&4#XX-$S7WO:AXJQ)PJUR'6"NQITL<*H&O M5C&>1'D5>BRJO$_CN3%8U'^M*:^=X31ZP9K *V5+Q:Q=2I:.X?NP!Y+4JKWB M,%] +@]#^!WS)C]ZF"\CN!ODNU=T%_9();U/239_BHOLEL8&^4.GKOR1Z*(? MCLEL'-QJ/.18S^*O27R;FV",2=*9F9D6.9S&PM/M0NH,F6S-)DZRR6JNK/4:(ER8T/(:[3L#>&9(X6->Z@ M[?D987";KF8M)M0 8*IMKSL_M,EFY=?FVI*'KQ8ZP<1XC38OO*VNF\=17N69 M-TQLUK1 "?5YX:7?L?I:Q=8)*F4^7K9C4\XMZWVZ^?CJ5)4>9%9&WS3P%6T] MJFK(IR3B?D_3J8DL:[Q]MZC3+->EVS.XYQ%#ZT9?WGZ0NN^N_IP#V,]- *IW MJ:[9G9<\;TS-.JW@)M,IN:;9W@[6:*?0EL!E#B,7*6D-X"AVO$@6U5D\+6!* MGLP+@_DBC@OG]J3R5R<-X50'/NHA*[M2BW=UAVRI8:$HVVFL3:UME-Z %J.V MSD3/=#&=*IFW9ZBOV)Y]:?!BU;*OL;>L\ M6)DE:;(H\_1R>1ME<2NP5*3VJ\NODQN=*Y)%VBF3_57$D13POM'[K_U"=2)3 M7I7FK_@RBQN.*=Q'NI*W7L WYA15D694//?=8JQJDZ9Y$6MYR0W2F/= M-+)Q$[;JQ^5E4Q4%IYFI=Z8KWA8=6+G:@_S2N&O?9)>E <]=+)8.JMTQ>U[V4VY_7GTKS0K+?^TM;P7 M<6):S=23U9%<9:(F15Z+9D&E_-XSQP*?R\D8!;1.8#,+74Z[P%@%Z^KCW1.. M6L%-I[Y'G8O6VJU2+RBCA[74-I*F>DISB:5T4XM^4V$N@Z[%KT8RJ* NLA?7<)^A;MW#Y]X[J[Z_ $Y/X@ZU;:I-?2 M)@1<2L MLI&+ZI3FM/6RE.F-"I>7'[8K"YDJD[:59(WKM_$3+,N5G-]*%F75;4M#(;'HSL<#IG<ONK,I>F:5EYN;C\C4'M\K/"G1H3&@G46?I0KV>E"%C919: M_U3,XQ2IR(-;FFU#S_JWE3*C$("L.'P:.I]=A06Y;HSK?/Z[^>8-Q':ACY8G M\\*:3MXM%(>NBL4QP(-^;=O)&GW*.BE_%'['=%'<:>XZGDU-67!E2V9:V!L M^FE4&1N5-G\17R4+<[)\K34*PM6!OCHQL P?FM,R1G=OQR++,L]EFL/L;C-U MM.R_87PW[;$9^]7@1[HW.P\X/D2>'Q\JCY8 ' :00B8"$E#H>))+Z+HN93X- M*&+>YM&2$P\L]?K0MU00/%0E M:D4B-:YJ8]W55OM4P=!DF68FDA9_BR>K4AV^5$9QD?O4NGV495KSF%M:T85)6]:HJ)Z:3;1KH; 3OJ9%7UR]R?EFHP)S &R6X_*!-7IHJ'5B7[%BVCF5F:R!\IVI[ZR]3Z9-5_'EI=+Y%Z6+OG7? MZHC2I;8,'FK"$CJ$$XZ MZI;39H/! \A8.J##;++;6#'MU,3,ROS9330V#E1]JJ&EDZ795:3LW3*JJ#V9 M2@U,BC/1-]I8B\OL7;N,U&D 4E:=LMN3_+J5,UQ=KU-[BPH%A;JH,/9-5=(@ M-S3RJ,IU M:"2,OY6!R,I3FY_OB#K48,4A)I0QQV',I1Z04H$70RQT* :AY_+3!2MS7)H[ MY]:_%QG?A9]$\X[Z8%:]]PN#WY0 C"[2U5(?F=>1UD])_M?]RPX Y,)Q*.)* M'^:NYT",/$9#"@*&N'_PH]8O=::XW=]$LYLYBQ%;JT)%*$I1*;96:U6YXESM M@LFOK8\Z=[4 EL\ZG=WDO!O3<+V<3?%AL,K2XM6?\3=]"M3Z&.=IK0<9T^I+ ME-Q&"QW]+'ZIS-0RW:#H#M X;73&NUJM]NC-B6?M>"S47U-:1Q]D+D98W+#V MD-8\F!E7D3XG4!P!+K]?QP(-7(4?M#G[53UJJV%D.ZLH,F>T5_-5,:;"M;7> M?+5H8V&;X,_\)EV4BDQ;1RK]F:8;EJG N6WHKHVW/ 9=(E-C4BOPO"H.&+0/ MW#0)E=6BUKM^SQR'YQ#;\OIJS(8HPWJMY_"5'LW+65K(+5,925=RV]4&JQBQD875F<)\ M-;EN>FEI7=RZOKO1-%9X2"$ 90S5I A44DW*0]ZD[=EU MKRXCF;_I"[2]H&OMKIWL+T_]+];;[DT+D^C>#1P>^>]TE;2%G8^Y)"'';@@$ M#3S?98[/&4'"";ET,3AQ'4,7[V_)GZ/.:]=G[ZT3+JCC[(QGIU MXS??]%^M3\/N[SU^"3X%O??R[^\<[SW(\ M[\/?WW]Y]_YW*WSWZ<_GS;3[?.VSW[X4&2IK+H9*Q;C0+@U3S[-QSK3K\CVS M_$3WT]FQ41]NDH5Q^A>ZV"ZJ[-LL6O5KRJI(14"WC#4488=[=9GU+;)^TK\] M*X,/9S^7!]GN[Z-NEV'G0N2N/:=5 \>4(2OTL-W:64L8M$GK_Y0ZF;W1C=7> MZ/:^-,4P=">71N&MQJ1+2N763]7)?QT.4=^5T7-S^-1Z3BWWR]R!LD)M&/ TKF3$Y\UA7%SFJD!$=CQ2],H8'\YOK(FOWTOHS6NJ4]C>65]BC MBA+7@N\EU?8/TYUVH3PUZB)?G%8IHM\%G?5*SZ:"I%F!J7$$@3]_$S-_D6(QS64 MHY>B5 7Z-F83I9T;8LT_D_>"O&<6T5R\]KUB3$AE9F7 MF:;IBTKZ53I2:%M21=;.ZF"E2:9-DDNG4TJLD+PHZUQG# M'XM+*_IN\?0'7<9=;TH18K-^6I,Z/UL_G7WTG ^NUFWJ%+&U# IM%NFNX''5 M7:84SQNU*'<5]C-"3A?WNXRG)L^L;.NBG=2ZPT MEUN=![+5+*XR\XS"BGN@#4RN3/--M^W_*9Z*;:MWH) MBGE97TRB6?-M4Q31Q#"*D*XIQE&D5Q?+K!]E_"DF*;U=D58GAIH^#:73N@K[ M/DZC,RW3L]@$1VHU3N](=8E=W["$2J5OIN;,U&6F1E5X.VM*RLN#40T=:GU> M%X_."I_4;5Q&0(H&]<44BV)79HI:P5[F=6/X)OE>)W,V,Z@3D4R"D@[]UD%= MLRE%1;@-EBC73CUK/5QNE/I'/L\<1=-SW!%<*I&E2!7?!)Y;G,\18%*+4ZF!7SJ/3?C.K<^ZU5O75S/+?X6S4TSE3+S MW]3@*5/_8WVD>V'J4%]%69WW7!V;-,4,6@&ITO!X1,W0UB*;3(QF-!LU%G?: M/*94J3GJL[.RZ3R:QNME66VM6-W&^CQPOOD(4YI!UPTLS,:H;0(^8B;_:%<7 MB99MS*VK&[:1\*+6>%JF;8=.6'0HOO@E_\5RH[\487Y)M+GY'TDVN4YOK?^G MR#)7Z/G''Q_[Q\R5K\:4?)E6WH<&T*QKMT^^$Z2]X<9UBWR?OA!6&>ILQ2Z@@,/ M0N@Z%'!7N)[ ODNIXX2N1,'S4V6A%\B >#-?^;3ED;N79U/JW*(Z M>TN'E;Y&L^TTNH-1][V+=]!9_W (Z?S +.^=C-GEY\[F_Q9S2;YIIU28E;6N MM&]NRB6FE,;J?V]N_WH3JJ_>0X$-RA'O$E\1@+?1@*3P0^06?6(IJK MYZ[R-U=1=/-64XBSF.K_!0UY.$NOK/EH:B.>F0B?FM>G^/)O9^$[;2#].SDS ME1C-1ZM\>F9-XTDRCV9YX\1;S\CH:*#J"A MOCK;(5ZSG71Y@!U)L<<0=3%R*69^X 984 2HXVZR7;6,G^I5?!\O2\OM4 *< MVPH1;"!(A]S66S%]!-+XN)F'L)IYF ]!X/@<>%*IP4(X?D ]5R+$E<*)G2V9 M]43FZ41449LJYL&P2^6W_Q)IT/9TW?.O"P'5J=K_ZLS'&N;SL8,9]<+ X0%5 M^J*4$DE)2!!"A#W$-IFO7E7%>"8\@A(XY'G\AXG4@Y"&PNIICM \A$C-0QX#% ,_" (64$!"1S)"H1,0H51* MX3G=\% GHHP#9G.=#S1\#CH5%4.)=XD5J9=E[)M[VWNK5 < M3;^3XU[6Y 6$Q.'2"SCB2E<-B%)5U;^:>U$H(/;!OMR[GV#]GSA+IU%^K7?5 M=)4X:<[=,W<0]%#F[D@>_)+JOF:O;C>69&'.Y&S1Q*MSJF@X5>G GB.!0(I= M*43*H'0DT$3M%H M7ZJNZK6\*_JW_?%Y4N3S>< M" %KV T)CPFE>C+U@H8A$1PXOD\\BBE GK-E^GVHZH6::I]F63]@3L*F>;=81HNKI.D./YHSF[ .00/KG$/F M8N%[O@^IZTN7*(N&(A0X(0FQMY7)'R:Z:.X?R==XVJQTX7PXH$&#;8& 35BG M'K[>Z5&]8LN^2H(C8T4$:E;$@#@^XXPP3U"@F=+A?@A]+!A Q/6>S8H=F30" M$!N,A]@&8]+\GJ93W4+MP.'I8?(?:?A/,5^($ ZA P"5T'<\-T"^U)$MSGV\ MY5"HUO5P:9$$,)M"]((!Z-[*OI,2<4?):536G!9 5Z=38D!%2!D('8#"P'&D M!)@JH?<43NLFKF5CA&PN#A#6ZA^G=6T%#BK5XR%?WA.V$ZOMG*8K;60^ARGO M7>%.8J(O5TSB>VOSG&H3_0[90]$DH08> \Q'A(6>2UT2.(%T@X"ZP/%\!+U@ M=\C^8*Y0:#, ;:+;CAT(U)ZRT_V,\I^RQ3W"W0AW3X4[!)I<0.%B$#A$J7 A MHI(A&7"72 3#D,.0R'TET479M/_'Z MD:=D2Q_[7IY S&X'+Y=YK&-!Y[&<][C[W4CQGAZ#K[HB_[371W M_XG8E\L5>2TC8P@N7=PN-T%##[A>X C@4QQ((4C@2P=1H<.:VR=P==?J_&.Q MQP<^'T08ZKCH9F_]%4.'MI&U^\+:K2H8C/L0T4"& 7&HAX 0COK7P\(+* W M5B69Q[%V)U:_H%V?K>^_;3[HJA>;XK[(L)X]VG0_K>P@C)N8*<8\#*6GQ*H$ ME$@D"8 N=$+L^$@$H7PX_[IRCMP=6-9"&R)F91 M68=U^?72&C0'5:/))%O%TPZE1O\H\C'"@8NF@HK#L.)/LV>KCEC7PFXL(C;: M2R/[/L2^N.G)H(0M] 2@CA*RE/I02D&I2UR(!.>2;3D8G\*^W=2)MS'F-I7R MI+GXE$H!GKAM26C#G1234'W.?.H07>G(P=#EZC^(70"<[;3F%S0AH_^?%EK.AE:HS,2J2-_<&VF5,VS!E2@$5 @>)%EQ('"^$X MOL22$(\XU-U*9*G6N-9&6]QZP(H8#!";PT[/]O1.X>P5:_955!X7)U+8Y)VX M#G-")J4/&%%B$KLR( $ ) RDQ)!ME:9Y.B=V(C,)%[9@77:9[1\G'L_!D;/? MWJ>+-Y/MK-.N,U&&R7ZX$8248-\-/2*AU!5OL2 >"@3& F'*?;XE".]).%'+ M/3EP?J<-@+0EZ=([TUN9=TJBK7\L-!;]&Q2F/^(DP>B>WRT(>*.'\<"G'I:^ MX[J8$N0("8 C24!]AR(';(7#_T@75U_B;-[. SY884# ;20ZS38-GW@8]]+C@*&75 *(#D,$"<2NXPCSP4BSM8$$ZG M^RLN1H>K,[2#BWL94QAMMY/F4]PT"2+ =7RNS\KI;D$.$B$G?J!$+V=8.I@] MC4^[$;6V1-I+TFE/H$&RZ0E8Q#L$\>=E.OGK6KV.L]RX,?BOIN77\FZLLS!6 MV1AW_YA#'A^S*A$@URA@6S^ 2Y/F^ESUZEJV6^5"_4X(_.N?L8&=^RJUW?80'! 96$422%"S%D MPJ4B],) B*T.G?4F&"3^#[WL@T@W']7I'JC3@^06#AN-F/JAPP.@C%]#R$>E\GB[NEV(0U+++RJ^C+,Y;@NU7 M"W&;0613R0\CTX[+BBHI^D-BF9*7B;3-\GBS22Z29;1<]M"#9/!>,-@#).0,$_Q M1-1(5W7 10#IA@GP#IE:'_.Z>;4[E%QSDG8=\YDLIJO9M%2 MF6;I4JV0(HWY319?QXL\^1I;LS0_N0J!/SW(CP(V_"@%X8'K>@'T./4=XA ? M<. *SQ<0(KR5Z=-:[0]ZL;WV6A>G*/Y0"_X^7GZX_!)]>Y:$R]6J_.WLS<,A M2B!L_C(G*;;I^CF[W07I_SR:?B-#:X;,3RIGT$: \(!0SHIN*04Q]*@76 MIQ&[9^C'"][',#2TH00VH"]R3'$8+'U,-N6G>!DE"R6JXRA;J.?V,;?OU15F MT?+E8(ZP@T+$H.[P'7K"88X?!$P9FQX.O2U?3K7 0;F^+?[VX\MDDASL3!4B M-I7$%OPD6J*.5NFQ,R%OA*K004<<$@HAH,"5CM#5["43;L =@+U.F+ ; Q;8 M#'(;=5HBM;=,V$\#M[=L.C2M]V'^;'F52.AP!TOI4>!0Q*7PA<"8$!=X1/C! M5C''=F)C8!(:#W;8C-J 05L-]JC#'B/_O33_]3NQ78*F"T7HNL@3@C*B-%A$ MF. >P9!C]8HYWG87BD:M=M^@E2QX/@TV[ME,'=9 [W_<4V:A/-RC02CY" MS)4"2P1UD2T(N5!7N+IMCQ^Z@=Q.B]_6I]\M)K.57H"/1=T;9[G,DHO54I=M M^)+JZEN-$M6)B'_(0";*.,8V@B]B(/=3!Q^MYY';U[B]Y=JB($# <84K 5-: M.G @PYA(R3R* \?9BO\:\S%-U@"?HA%CM M[#1=Z4Y_+U\HXK7Z03]Z"8:*@0IPFK*BGA,2X4*7NAC2@!')&2)!P!#F/J/X MH>+WSF+ZK:[-CJ?J+<"7@F1I Z>9#"K9*77 2^ASUER3C4 M"80;HI!0)_09!(RSK=K'>X!4)RH8!C8ER!;B<&DZ@P$IHXK]8C3A^G/SMS4< MI1;';ZX+'0@GC'J3^LKK/\=Q68QVF6I2,$MFLMPO MDT6TF"3&M:(^F*L'YN?KLS-_BDDW[WLP*5VW<6T7S-_KK+K%3705O[G(XNBO M-]&E>N+;:'8;W>7J0;]<9^4T(L.#N0AD@&C@0^CIG!P@'9<(%@1^H'0#Z /] MFVC'?K9'^269J_5]']]:G])YM-@@Q-=9I!TZ]7]^#/ZPK7?OO>U=[MU8O3:E M?J[I4Y=6+K*)=Q' #G)]TL3:@@2L3_1?JWR97-ZMB]OZFF2A](3B_?92M$;Q MW5^WA[G0X#M;&Q0$A;)BH,::Q+-9^:U!:_U>+O\(2MT8[6TR75ZKEVI] M2J15EO LNLGCM]6+7S=Q]:RV0FL?C#R[WT8M'L'(C[^>;0F%\O'[?44[O^.S M'_:J0?$^:;%',+^:N/E]#D8UEY<-'FZ!KW@:]HK=T/O/.,JL0&'2U/+C23R_ MB#,+0[MO21\C?1^&OK];=N\ )+Z]%OLI^@?B".W8>36J>,)*C"33)Y(1@\DT M/[0S_U/\-5ZL[FF#TI]EZ"W['/$BG.S$Q]W?3WN$?<0\7>. !3P14;)V9 M* 5UF*5S3V=SJ'O\(UE>>ZM*Q>(&; MPN(0A-S%-)0Z(4)"*0*/^,)%V D#'FP''[O!"_$Z>"&I31&S,>TR9;3_Z6"/ MTR=[JF:59/$,->MHU>FQ)>%] $=QJTX9@U1ZR/.9H-1U)*4A0\+%?D D]UY9 M(2H_ZTPAXC9'PH8$G727PQ$11D380 3>E)=GC%/&? &!P-0'H;*+.%>@P C" MR(5;2:$OJ_)TC0C$QI+8J-M*AX-#A%-(G3]I1]2Q%D(NT$ORIBLK]R5A7(2^ M"Z@@@>L''.I3?*'''4&VNCUVJ<]T $>Z+2362:1=ME'OK:(Q,M8PD[0-UTG( MFL-TF"EF TCX E&'$.G*(,2!'[ A(Y[4#=)%[7==$-6?8+N %I 'S.S>Q=O MWV3:*B^5[\P?/9%XZPLNPC!BKR-5C%3Q>@MR/ 6]=IA(7IHO]5&"STI]1^Q',]=CG=S)[>1I!K@J=;LJ@"1 MT"74E12YKJ!^$! />X3@@+E;U8HU67VX_#U-I^:D<.%9SC\KB=B?'!Z!; R$ MC2@;ZQR/G'M4G$N;F%/@8T)#ES+@ ,I<]=?E B/B8]<74 ;/XMQ7RJ;AV&:4 MV5AT6K:Q=YQ[5$G+E:*1%^1QXLKSL1:&?1B6>!-,5*K'Z-L8D_8>!WX0 M-<6KF4L"& 2" 4]2Z5(7AA)@RDG@01\AIP-5I0-G!K,)8@K.QOS;D97[Q,J] M3K31YD;3] D"Q$,4".(P*KGO4"_D+L$A%K[CN*0#):<#UX?BADKS>Y;FN?5GE%TEB]$L.ZV\0 A98Y,YD$'?HP)RA"G$1$CFA([+!&,( M^]Z68]<0CC*P+K1GZMR?HW_<3F4?97 MK,%J:+*[+S;F<468,&AR]'R7 $8Q8R@4U/>PP.H-8*'O"\DPW'+E?(Y-YT-G M,?VS(JI2 ![0L\-M*HB-.3_JG+N1$T^/$UNQ7HZ1#'P08N(0&D+B8!Q@GQ(B M*634VVI7_B1.[,KQPVP!D(U(EX4,^L>)1Y7]^GN\4*;*S"@"T72>+))\J4V7 MKV,B[ FFUF'22JV#'D#>M-6T]F[&^WLW1WOE^.P5V>2L MN0*Z$@4B=&!(D40N ^(AL)>;7'O/*87Y ?0$QFRB=0<).4U)[9Z>, M'/C2'-COQ!$"9,V>B D$(65N(#"51*L3'B0N\)A@CA]NE8!^#'MVI4D@:#,, M; 9>A#T'GE=R3"'A$YMKKP)JXQZ/>]S3 &H?':TBB"W@> V)F,<=>3! MX^)!V1@^#&-?V3T.!,*CH6"2^@0R%SO8%S ,MQRJC^/!SIRHT!: V0#@H^;! MT;HY_KF>I.8[[O'QS_LTTD/?*0F7Q?FR"O&,FM2H2<60\K8U@V!('!]+B"A" MT &,TQ A(1F7+-S*2*LHZO#Y()+9C(RU4T?>.R[>$XT50QT9$ P8E)12C -U M"7>YYP,)0LZX]W3>Z\R"86(L?SJD!- PS93BM+ FJRR+%Y,[)? GU]'B*K9F MRM;MJ8[;&X0YQOPS!DF3QL$)X:Y'H/ \&H2!0*X?8N)Z(:3$!5L%!DIJ\DIB M^I)%B[QXQN]1LM#>$S=6Z!%WT%(O5\_YV]F;AXM^ !OQ3GTI?4U(&[GRV+ER MK>D!=AT&4(@5&RJ)+UT$1*"4<$X9Y.Y6(.%Y7/DDU> Q7 EUB?07K1/6?U7A M),[\CXLP5H(8J6*DBI.O#U($$ZT+(W6MI'BWC+Z=?)V08VQ5#CEH'>B!3!(L M@2<#GSHA=J K/1J& C,_).Y67GP3=JX:)R>+E9I@&9=.%Z7J5ESW19-0\&V9 M14HA2A91=O=N&<_S]^E":W59:LX$5\Z@0^:2,%M28!,DQI;F(P.^/@.BQJ/A M4T!IB .) D1%Z#@.DR$,7>1AZ+MLP(Z494!MWV]MR; Q1P1D6','] MV;BS0WHV9\ &+QI0B(+:VAJ"!_Z/,HV):2*HCI\AAP;P7^R"\]YQ _R2U<26=A*,; 1/@IVZ6?<](7" M%RF247 MJV4\M9:II7;R3Y.[:5.O,Q0^ MH\P!4I*0(JP;8?N>YS,7.DCWAST$=W>GNS#99:AP>,Q](IZ$6K?1A*:UFWR9 M3OZZ5I?%6:Y;82^O8\M+Y^IY=Z=I13V!KK&BZVFZTBMYD-36+H):/QQREKV& M9M&"9H@1\$,)0P=109 K"0 A#P@+?)W(^R T']C%PKG-T.$*)^_8O=XJ4"-Z MC.C1$_20K90Q D//<2B3DG'*!!5!$+B>$SA^R# /W*>B1X<.)XALBLE)@$<_ M/5)CSO;K+L*8LSU2Q4@5)YS)'T390CT_MV[BS,JOHVS#Q!WMVS[7#'I-,#R" M^9W,7IY" O(.<'.C/)F8UF#39*;CD4.3^4=G;3_;<=T?,_R[A-%C^QP!U&2# M<($$0:$OI"['X_LBY)@PGP8"(H395C&>2F7X&&>?M<)@N,Q93/V"QQ[I[ZM^ MW;;EZ2E;W5M7X(A:(VH=(6J1IJ%L0#!RPP"X $:2B Q9]"1 M$KD!"#Q GH]:N_R,ST.M3G/;!HA:1VU)_\.\BZ>6H^847<76^]7\0AG5RFA6 M!O-!X0?>(X CH!;0=]*>I;"LY"='RZ-R/RP6N9+18YJOGO8FL:IG>]U M1I#;3$>(Y>'R=@>AMHV\/O+Z%J^C)CT,A@AP$3!/2(=ZD#@.<%D@L$<#3@G< M*K+:&:]O66@CKW=BHOUB8G_UY^9O:SBS9!&_J:*O"/RX2:!0=P-OC7D2ZPSL M)XQZDRK+ZS_'L;5(EW&N$V\5,9BGF?0\FA<7&+IB_UUEUBQO%(6\NLCCZZTUTJ9[X-IK=1G>Y>M OUUDYC,P3HA48MDG-,"A_DVT8S_;H_R2S-7ZOH]OK4_I/%IL M$.*C%JD-7^ 0BU:\U1LY_?@S^L*UW[[UM MXGA=.MBAA7MM O]V%:H_CNK]O#+/>Z/2@("EE8Y"I,XMFL_-; O7ZO%F52O7\$N6^, M]C:9+J_52[4^)98KF)Y%-WG\MGKQZR8XG]4F8ZT[R+/[#7'D]@X=3&T^^;?'NG[E7(@#T#BVVM1/L4(O<>7AS\01V@WRZM1Q1-68B29 M/I',IJ'3WU,)!V^UOE34I^+C[1]6I[=3K M\74^O]YEG_4[<,$ P[& 8]G 'H4.1[8>V;H3ML9C=<,>YG$.."]J1V?9I>X[ M.#,!I5%3WS-+XDB2( K0H0WH(!(2AEVJ] E&'=^7?L!\3Z=$ 3]P!=H$'>," M6(OCM1JUW-ONTEE,OS1$Z$QU%$Y'!95J_>&R@YZT#R5("&I#V6FY]-XE/XPL M?(H5"G]ZD,=Y<^0$0:%T",]UB!]0") 4@2,Y%J&'%=-#]FH\WGF'6P:PS?K1 M&V&;35Y;A?ZY;Y&_0[NKOZ3+:-:5N_ITH;*KPXA[A75>2B6230IXP!!2>!GX MW',H"H7K!Y)3(7& ?%_X_B9<[D#*"O/4N]E*+\3'-#.H^,K%G(F-!+ 1>]&Z M@_MM_&OK3"._'S._*VNGYG?F!L"CRN!!@-&0('6%HWNV<<>3 1/AR_-[=\X; M"+E-J1S9_30#]O=K0)L%H=^.9N48PQUW?]S]4S ,/X_% 4^CA5BAZXG&MF,. M ,S%4)_KI>H+UV,R # % I(^98K[ %=[\!V&A6V4E*/(>HV\L^P^0V;O/*@-;0;& MD/88TAY#VGVHJ=N[+.>!]]TJ(5S ,?Y^;*V[1OSI35A]R.#4ZT0"" $8,PE. M+I/@2"O-O?;X=ZSYM*_U[S8KB4SWKG^'"()8MP'@E"F;-12!%[J0A,P/J<] MH'\3/6O^;90=2]L]84J/+VUW'2VN%-\E"ZL=7?[?_TL@R'^U@O]>),O6%V/O>"S7G)>+_DL<:3SZM^S3JD(7HTF[!4J?MVKN6])-7Y.GR;6BA_L ME-Q%)QLMFD_34]%.:,W9S)9S5^40? MF!Z)9B2:WTKS7]/$QKD;\]E&/KKY;,Q)'TEH,Q_2:WS^AD;>[9\3.1+(L1%( MD1KR6.?CZ9J\ITLA8Q_7WM0X?Q7-=9ZN%B][71# N,-.G)&F=".9#[" L:.!Y@ HDW)"Y MB!+L4.H[CD\V$\$*S:S50W0CE>N=7N5_)_]57O]?=>Y!H=IK/T&ZT*D(SKQPY=_6'3'A<)[SGN(-+@#N:(40"D MQUWJ4<^ES)/<@]QQPX 1OH4[+6]! 24=Y)UV#U;['I?4.'6 DU,C1HT8-6+4 MDS"*--U+@",X%M % 6#4$ZZ#H90^]D*(B(/IUG'L'F%4DS2@+98[CTM!U)1,]QJPJ MDZ5*8ND,K&P)B,WA 4X$C5@U8M6(58\L@5&"E6A:NOBN\+P@]$G():4A< @* M.0:,,Q%XP-TZA=@CL&HE5]W7A.))^/68\AI4,IN)+E6N;>;N-:^/>0]"'@0-Y'G2I8Z$4"+D4":X;HT)/:'&B0).>)\A[V.4J<\ZT\J0QC); MP"XK'XYJV0A1(T3MHY9!U& 4!\I^%#!P'1E2R(0R&PET ?,]UPM%KWWSNV_= MN28&A; )ZK+F\:B)C3 WPMS!-3'20CGD>)[+0A]R3AT?"4XI=T' H8<9"[V7 M1+E.U"DBJ8U%EZ#43W7J!*I,G_WV/E[N7RYQ0%533>8_ZK2K2V_U_+'B[TB; M(VV.M#G2YDB;QTR;CU#$$6QJ46("8!!2$0"!:,A"UP=:%T>>YR$@G:TJNA^S M]#)9ZA/K]Y:1[$GD6=A<9Q]CTJ5./K+OR+ZC:!EI\R1I\S&BA8BF!Y@//,1I MR!E$%.-0($:Y@T('>2)PL'-XT=)MT&P4*"/3'B?3LH9I"0^8)X ,1*B95K@( M>12&S/<\+ *^=22M>Z;M((KT(!,S*48&'AGXJ!BXU;H6>,()_= -PS"@(70$ M] 6A+D?<#QW7PWLP<">B$T$;X4[337K'><=SP/OLMS#-8G4O:[+*E XUN;.6 M6;3(9Z8F^P&:B?6/[9YAB'UGKKV5#""' ER),B1( ]G MNCV<^XNY;#RF2$!EHS%/<)?Z$+J>YP+M--7=B3V\E15WW^$G;/-]93+\TRKPS_= M1V2#(Y["$3_ ''#/I2$,A$-"Z)' %\ !"E.&A2-[1'%&J!BA8H2*^Z""H";_ MQW%<@!'W*(4>Y1()&@@4$,?!(28LD,."BIV7DZ)#=&< VXP>HMC5P?C^!LT#FW9,K'8O7 M#LOW^R @8;#)/^8RU(WOB2]=ZON^XW/DA$ JO83[6&X?=WY$"61QY"60[Z.4 M?IX8[!4X]%9=."'NYTT!=,R$\"E$GL,!Y=QS/,0= 8G'64 Q@B]V#+A;R.A- M(>(1*4:D&#!2R*9DN:E6+@5QF8MI*(5Z10(4N(Z+ P+0RY5N>CI2.-,!E@,> MD6-$CN$B!X4-HI;0,PX5*$H0\)8\"G#&TW9NH/9KQ& MU@6TH00VH/0EX&0OW^BPBK6-V'-TV/,P]- &>@BFE*- NAX0U.6A\##QI;*% M7( <@%ZN_N/3H:?;X[8(V (@6_(7.6\[*BDC4/0"*+ZCI/ &*;@,I0^<0%+ M*?0@L#DP89,@-TQ1N*6^S5 MP'&%*P&C 0$.9!@3*9E'<> XZ"6QIA/50H=E)7D1@Z6?JL4Q'59^5KW6_F5B M[7^.J;>*ZBF)B)&@1H(:"6HDJ)&@.E5'&6.MWG4!X@)(G7"LK%\A9$""P&.4 M,DE#]+0B-[)/54LAMB7G-D-=JJ8CTXU,-Z+X2% ]0'$.6ID96'C,HQ1XW*.. M\ 0$U!>A'T#NNR'=.GO6/8IWW%5OQ.Z1U7K$:JC-:MAU B9=C'V*D'2')[5#EO6$W*;D"X/68QL-[+=GFQ'&K=Y(%W.)=1]9GTJ,5:[B'$[JMQ#J?Z[=@/80RPCK0YTN9( MFR-MCK0YTN9(FT.DS>^4.QD0[3[" !2X.> NJ"LDA,KP P$5 J*,&,^$ X, M0TG!JQ7)V'D?T'R?ZGI5KP!AX$E\0/7> *$M !=X MV FIY!AP0K;/M?<;'@X;'L*V!"]9Z7<$DV&"R7&!1>O\!B(A8=BE7$)&'=^7 M?L!\#T' @1^X8NO\Q@N#11<* ;6A?)%Z%OT/=?4^HF7>/;FLIGPV4F.%U--T M=3&+GU6(M]_GMB1LG28/]8E0'XHZ/A00^!!($,H1;G0!:5>V*2IOO M\GP53W<_O>SU-9)Y#],11V[2)N_\,AEV"X (51HY@@@;$0 MKL(GH,^Q"\8"]7^/,=^1R-VJM-,"J/^(9JOXN\C4FUJ<(R"-@#0"4C\!B38% MR:$G7:[4I@!@0$6 I.>ZH4.02[%/B/=RI;_D:10:'6%QA,41%OL)B[R!14=Z MH5*(W!! 0HF+7% QX M^'#U-2F;]E=4!DZ 0N9Q 6DHI0BIYR#)E9H82"*VCJ#W"!!?HT2L!,+FK--2 MCH^EMR,NR3;"Z@BK0X#5AU!505@+51D,/4 I(P!2S( ,F<20.4 XF+MLZYQJ MCU"UVP0G3&W H"TD&)7+$05'%#P&%'Q0N40 -S"(!82($$_HYB4!A"X108"@ M,C6Q!Q%V>@R#+U7:EPF;B1<%QU&?')&T7UM\LDCZ,)#25I-JYDJ!)8)0!A1" M+BBE+F*(^J$;R$"\))!VH!02I1!B&\%1*2R2X7XQVU!_;OZVAJ/V)'YS7:29 M001^W*1ER!0QM\8\B?4&/F'4FS1:7O\YCJU%NHQS:YEJ4C!+IMTMUF6RB!83 M]2-UMU*:YN?KLS-_BDEOSJ?]Z"_)7-W_?7QK?4KGT6)C(QXU\S:G@_65T)F; MR>5=\5&R4+B]?$N$ONB9BU.F4M;44T#YZ?RM]OJ)%$7 !@N8O]=9=8N;Z"I^ M4Z*VDJ,C"9 \^3!#J^KXQK"GTB8.@S)I%T M,/5\C^G?1&O$V"%==<-AQ5M]L<) A9:S[812\TP%G&EF.)"(#(\P%@-Z)_#_FZ MFLV:?E=?4TYO-[RU1O'=7[>'65)F>U 0%-JQD5K6))[-RF^-X-?OU:),JO>/ M /V-T=XFT^7U6RG/,162D_(O^[$2X0I\9]%-'K^M7ORZ*;#/Z@3S^M"$.+L_ M_;QX(,<__GJVI6T4W\$'OGKHN\Z_>MS/7C7%_K6.Q?#[CL6HN7SWJ%.G1V.V ML%0\#6'$;B3]9QQE5J#8=%H?++ PM/MVQ.*U]A\_\XQE-VNQGYEQ((K9\[3) MBZ_$2#)](AEQFO4)=^FN6D'5A)E;EUDZM]*;6"OBBRM+^RN^)LLDSI]+8D=\ M8O5D)S[N_O$<\NQ37Z[7\K8_9\R']I<+)24IB[D(.+'-PHX$A.5TZ$L!1(*&I9WMG4SBQ9+*UI,K?B_5\F-QIE3 MZA]2R6TF:KG-O1#XGN-(#W*J!+@ #G$09#YSI(.]<%-NM]?V@ JYA-26L,M3 M;Z,V_@* >I3<(GB3ZP5\05VF;$444 *Y#*!2;@7V0Y] ]\GR['B%M'E MF?E1RWU9D>7,=>K?_]0B*UDLH\55HF/X49['R^]YLD^C[&#)D1(T'"E\-X0P M=)6E22B&BA>1[WL,NE"9H]+AFQS97N@/E^_J97;,*A]0HG$!;0BZ;-O8O^J! MO>+9OLK XV)%U'3,IL!'!"M%TA6Q^WA?=N?A,EF3;?K/C;3;S([XG^'+5B*DG#>Z[GN)0*1L)04.11%PO* M7>Y*+%T7XJW:*8;'FE7TKJ/L*CZD^&/,QIV>S>^MD#LE639(MF%-[QR,*&5. M"!R$.44.59<@1(0KN><1;]N>>S3;["VJ_B?.TFF47[=:6 V?94[4J/OI]RA9 M_&S-TCRW%!'F:K_;[LA._9"#TRIWGU2N>%0T/*KCB)+J-N(AI5!Q*4.0L!!3 M0)C@[E9D42^ZCBM^6'Q6"_[A\F.YW!^U[S>HEON0R02Z;TRG!;N^M[=/.BY\ MT/C=/B>"1ZMPB/S[$/M"];>1L8'T9"B%%U)7"5LHF/J62$D0%2X@6X4&]N;? M)\G.SW,%PST8VF:O\O3ME(A "U6)&%+,#(]SP44 Y\I?!"I?ER M'_N(.*Z_(TGG:Y*K6X9IYJ>KB^7E:N9,)HJ #^HJ1039H-/.:Z.QV ,1-TSV M(:UV: "3X0A,*.0.GDOM@Q'9&9 #QU;[NKHJOZ M^,ZG#HB$)+@I4@;(JI9__60F5HI:* FD0(IMMUKB B0R\UWS?9_G#V-?S'=J MUR#D(49[B0Q':_!.P=XA2N.CR1H(1-?>(6)C<*(2A*BAA@L98:AQ$E&9:$(B M.( X#A[G"1:B06O-#CQA<]Q!H?7 BJRJLYG7$$HWZ:V#RWB/_BWL96J@UL1( M%=.$6..IA#8TT3A*<*P5@6RC-6O] #^R@7:4E]Z]_5QDU_GJ>I?GB3"T/OQK5 XA0D/%B02'Y#A$:)QA MXETA:["E^,US$*Z.N,-ECQ-RFH33KABSE_M**V6NTOFE=63S>3#QG.G+NFS< MUQC,\O0\GPW2#WD$SLBQ/]^[633KC MTGK>6B#L&%\,U4 DB9#6B8ZQ1GB#G/[C?%)D:9E%6?7?C_-FNG]I9WN7&>*0 M*JA&#(8VY#_)[RC=[,&-\ .-4S*88Q6[QZ6NEP[22.J8&P4(T2("$>,,U%)'A=$;#3,OE[H3WL(I M.*VK(%P11 <%/7/[J%\!<7)B^\+:2R8I!J70!,B$<(JL&XLD$4(1HX'$"6T; M::QK.KM'4C\U4_Z3^_NG;L)W:".MLTKY7LY:1EL=?(HL#TLH6RMS!'OSN .I MMLZF[@[QJD!.X%9J@'4F%L28@)CC2!A!B8HT$H J'4.(#0?;G"_40M]+I]0*X;5V=:M# MA= ./R1DT*K6U^Z&<2N-4>F*L=KWH],(CRL$T2N*E49!B26C<4(EE1(AHR.3 M**TUU&Q@A3!8;2QGH=5<8] "IYCYU8K+_[5.R?WSMK1\.Q;\E\S=RXC>]R7\ M%+ >H":01L98JH12@V)A8@E1A%3,)(OC#4!32_BL&I3(Z2$$^C,A^:"/O=F#@=$D9K$J/46C__RTK MGV?B1PU!L&/M^&X?_+3Z+W/_X1A5PP\_?EX5DRM77O%..78?3^#17FV%CI7 M3 ,1$T,I@T(CC&SP#B "*!(;;>@V%O<RT#"Z*Q?6)&FK[^)FACKP^M@$SA,1 Q#5E MQ"A"H*0\8E)*#-!&NWDSZ8F=\WO(9?9D5YD(">6GJL5C]._?L5SVNFV IE'$ M>!P[& B"I.98:@ @B[4VF&\ ";].+@?CS: T1/RX!?.HXD_OGI6Y6Z32XZ\X M$^K/G]+*<9MZ._H>,+Z?\(9[/3E" \Y1@JSSBP4QL4X41EHADRB(:?QT**I7 M93[/RC(K?\Z6GRY<.K!^9[K+8!3QD)U"T5,H>GC"U^^QX41C8B5.<45-C*5A MD4*0;+A;^7J)(BQDKCR/K9DC("-50)1$0KKJFA9),Y\@7" M/Y2QQX*%5 9*L1?];) M/R &8F $ESRA5"=2&ZY$K&(@.$=F(RGP*OG?06,GD#B4PT*>'[_\O_O:47_N M?9'/T_GD5#AZ*AP]%8Z^H\)1%U0XP-,JR'4\O$7V;3'[YA3!Q/,^!^EED65' M7#OZJ'<@,.R0*Q/&,)&Q !)2 [E((@V0@L3&"D)O1@?]L_1?VCG^=/&3.S?X M=%'1:@^9.SQ*!+V3>SY^$7KLJ>Q9 M4XHBB1,(2 )IC*6,XR2!2BM-8HSIQF'6EM(W&*T] 2%$)P:^XPP=?^F%C1>G MTDXH86<6F> 48J(!588*Q 4P6B-JHT<$%=@L,>D+YL]N)@?"!'NTIQ 2'"+R M_AS:4T1Y\*+6R\HD,6")PH)%,:!0$65,9+W1!',JC9:O$;7!<#JH" $=LH[C M, 3M?9ZL;-1IO.!H950%7",_P)44M,I>I4IV4@LB0GC E>/C4B7'7UG:,C95;9OS:?6+@S[X M9G?>_-4=)P>I+QY7%Y)TI:,4)=PJ#&'##QK%D= 0LX)4BHBC&ZH"Z;3]1=ZG_QL[<%B>A=*./YC,ENY&;2_^-7\)5UF\<5% M-MDEA@(/*10A!SM $QT9R. I;W#$PFPE G=D'PF(E 0DBJWE-S%7'&"#E(@4 M8$#PC<[L-Q?FP3(5@(2,B*,7Y?>9F4@6A?U['F1_--;^^L8NL*OZVI71/[C# MM\=U!.YT1"0IXC3A3,K((1Y)+!4G,2":#_2G8_7?3E^=/\59ICEZ<# M, 1X4#UP.CP_1#M_94%-][[/$4#=Q4%[RP]T4H99JT] MXXE#4],.*T(1Q__%H,8;V(8[B ;LWV\3VB,93F$:4V9BQ6/,E4AD8K1,-MWV-Q?FP8KQN/,#T-&+\OL,[15")%*,&0>([CD]2C#K@?-;R9??U1D_N,>@ML7:SI8N4 (/>/ MQC)$+N:_=CD%!QN;0-K1B1H;@IA8""6)H3RRRLS!U%&![;]0JHV,Y- Z30ZA MTR ,*0#6!1D2(?K)?3#.6.0=I!5.&NS=:S!.3_'3D2JP<293[JJXJ\HC@]Q^ MUHM6J";?V M%'B^.K&XOYCKJ3TPYB0WXAU)$64:PR2B" I&-85*2AYK!1#3BL711CCEM\M' MOTO@"57I=+(TL,$=5&L<6!KG%2IEW.D;)+L$-$Y,'"&11) IRAG4A%+%H<%) M(@A0F^WSC^N;H4I7I!0A8WNI1C_P-,Q!.CG)HKC,OV6.3,\%2M/L?-GY.(XZ MU 93C\1+@ZNLT2F?0W!;,.S4"+>NB2%Q0K20%.A("Z"UU2BQX@(QUI(._W&3 MS:P.F;NP>%%\3HME_4>/3M9!U#4;Y%!S;'*6V4#'ZKHO4GSZJ EGT\6 MUUFP3/_86_[AE#(=>^SG;90,O"0&7H62#=OT=5NKTC3W@9TS*F&S\26T=H]JBW*(QDTIR##9.B3_6Z[M[?P?R M4- AT=-'Z[8<>N!Y$NRQ"':O_(-$RHHP@28FBBK#!=, 6@\!\1C;']'S!7NP M QL6$CBD._"VAOV_EZZ>LWW=_^P-9Y;/LP]-,AB!/]W=.)#9G=,;\R1S"_&, M4=_=+?7GOV19S>.U7+BU]+Y0NG0EIQ6*O2MI7]H7/'W.V?K3^1_50W=_C^"A M"+RS"O[G5=%WI;VAO]]U51/T;J9::$+%8H MCBG"L:16?H2,E8%&1HH1(@AUWTE?^OQ@_?'_M2J7^<7M:Y__'N?K_WR.?PJL M/[^Y?J,;ZL_-9C3]S9BTF_%+NQG'_RQ1-LFNS[,BP# ,G,_C40.> 1UTQL^YE\;DU_]?<0<^ _;'6VU>RSS5GQ=[1*?E'X@Q>GVS-[ M'WA6^0V;/VM3]O/JVFK=R<..Y+J=^F(?.[^P1F"^5).)C0&7]KD_V_TTR;/R MJ[V GBTFO__@A=S]^26;9=[ ?& JIH0ISI45[R2B2@H3 6SEG3$JD?[0<7&J MF$721(8*$5-MD% *,4T3Q7&22%>K[4:;SU?95"V??1_X0Y!92WGCC%6QRJRN M_OCWGS\F'XWZ^6N@C/GTZ\]?/_[\]^#SIY\^FH_QE\94UC-UQQ+9]^K!I*U' M\/P!O>9YT \[V=/]+8S(Z_=PG2JHLP&]'9TO[8TG]^JL=+DJ?,>77I6.I;S5 M38/>^8YNM59O7KM;W&;9"7P7E:TY9]L1=5\^5BGB_"P"YO6GJ- M56:S61D&T]QU99^OK((._>OYW+H&]JW@IK!:V_6X9=9MF%U7WYHL4B=T]K-Y M@WX7I"N[M O_P7)57*23S'_T)LWGR_8JB[F_2AA<9>ETYB:Z]U;8OX;[;EI, MKG+WYJJPYN&[W0F+[_U19(6=F4D[FI>;P'%LR!]^["_>=[M"[KBJN''ZM%I$ M!_'J73:W(7_.OJ73- Q^/?MRIL[H@RN4ONE\RR; M!]DLO[;;Q][KKA*\ZY$=@"JX*RE;.(Y;Z$0OKN?^"*\):%44VG]SZPX#E MNC?B_OQUGK=+5P93N]II89?&724MK36JUF.6I^?YS/>)N*7-TLF5^Z^3LHN: M]V1-#-S^\VLXJVVEW5#6,-;7+P/GO%40Z2U=BA<%*SS^Q0K:S?UZGLZLNK!V M]BJS&]GM,SNZ7[)OF;4:U=BR/V[LQMJ\:7TMNWF*]/+.CDN=U$LKMOK^8WH;E!8Q6P#GO_4[+/UP[>SW/M\)VOV@W9WKZY7U< 6 M]KZ%E_I.)AH)G;>:S:^2FZ4U[;DV'59M!7GW@9KA%_68JG'4TQ?6 MBN*)^Y=K(EZ-^LQ+7W_K_A@$SW-+?/GZEQK0X=/%IT81-TG04LVG2;NI3?6L M+KYTVNI1=X53HRBV06,,#07*",!$+!,D&-*1XJ3GKD@&$AS)&##"*=3&4?(^&^[*NL6Q^] EY>Q.K=9L4X1KV:ODH^K96MMB]HUR6UN; M.@&8S1;?R[^^-IC=XL''DF'IC>+);_>'66=8^H."H#I?J,SEQ(9M];L^V>[^ MMK,X:?Z^QR1\S:_M^OVW9"R/_WMAXTL?_4>?/@M],A[CWT- M;/6U ZVH%L_S"<1#%=6=63T=98YMR3?.4899],[4!;6MNWV?:S\8T?9A[H,_ M!9]\['A^&[B#I?">DZ51-:J]73%B-3T_+:?W3<^H&[7>5'L>ZW;X]7\'G]UC MV;@V*US^8GR3\TYVQ5BK=C&'+..D8R=)(B)BSHQF,J8<,_6[M1HX+^5Q?*W]EOJC[S\S87!OSE5 MYA39/_R)=J^\9[ZJ7N@J?#[^G+0U/A_0XT4^=+0DA6^G)OYTU(0*/_RHBNO% MJKAPZ32C(FL??S+OTX\\](7\]4L0^=3I2![OT)?OS0U/CP&3"9P8 V*@8TJ3 M2$MC"$2Q0_F02J.-)K>=&9Y.6UAE857%L 8(@B%KQU]D:,9K2PZ7+J\N>33I M/)VF@5D4-Z<(;*P//O#"^S7/[3=>;)I.RW[@U''>F E .E#=F,8Q(B366%%" MI6188@"AAO8WSL%>HZA**7F=-&9;=D"4[\<>,'E;IL_^YR4V[-AUU@$L7[PJ M%B-YLD-?N32@L0("0B2.-81@U3J>*]&Q6J',1N3([,9 MA^P?>V/R]\PN_/PV^/OU^?_[UH[B(>FL0U[X%YJATUH?133$NIYO1!-. $ZH MM5ZN3$X) >T?1I*8*,V3O1JN6A,Y131F W:*AD:CQ[P!FV;!/[(_\LDB^'+F M_OCE["?_7W.*D@YT63]GY2E*.I(H27;(09A(K7C$$J)B:BC26.A8DRBFF(J8 M[>\S*',:(\J(RRTYATZ@??. U=ZWD7]/\^REP>NL' M?W-+)CM,BT03E0BL<))0RDPLH!(Q4!(1U!B"H%46F#"@$1QHB(%9!_" MQ1A",:60$D,)HH(B%-$82H/BB%!QB)!Q+X#)K*)8M;::.1PXR-FW=+9RJ%3V M8;P"FM<@FNY1W&7LH-TK,[MQ*W2IX6-5#3M?].Z7&U MSFN 4S?.0=;N:<-A56EWG&0@L\(DH( THL9*72*D5!"1R!J/>U)N/WLE_NGB M4[/T]28LMZ&D**O//F0"UO'K/Y39Q%F![XMB6F;S'WYN! MWO6J[T HO4@__EIFGRYBJT.N'4#9?8J0Z!@IA(T[Y+,Z+E)6W1F<6!UGS;KF MM*\(I2 .$XY01JF4B?V XHA#YPNH.(H/41%NH?H>P,ZT4^N@L]K)/0S8S H0 ML](L%?#75OA>Z_"9%?#>686@63@D2:NX:D7CE9/]@-=G_UI-+VN , >JUTZ5 M!R.S%W-P@*OKFTI953"7%Q=V8WJ]5GA#XT#WKEM(S@?@ VM8OFD-F[O<#A]T M/KWW'L6]0(#359'7\()%:P$;H+]X[M@UV! M^>7"?1+?4*($-F-#7'KRFFD^_]D .M_#'$@)B;&(-(D&T-1(* X", MC 57 ((DZJDA0Z#6*$HD@S2)5((3Q)%1%$&CC.:/X[8_>9]WA@#<0#TVJQCT MUNTP--J]LNU ;_O8H=Z;D'BRW.?>L1Y]TMOMH=*@+4WF+A? MLMX-7!"35XP!D^9#5W9L=N?/]JP&+JHH\LO<^277CMG&!6S> M_2BR6FY*1UPP\VF@];CI9E58*2IK(:K=C=!_RB$+ASX@L9*6N9 JF]8>4SZO M'":'H[]!,C<.#/T7B9CUA*>9E;%/3AW4I";E+]9^V.4YGV65K-TG8B#BPB# M(PTT%1Q(2#C"D2&Q4B+&L"=BW) H 8A%C-L )M;*"IDFF">,4&'5_J/&XLG[ M;,8R>XHJFMD*NND:?S#1#KKH!NW,1'FU^#[W2/8N 3'WN=GOWA%W>/_3Q>I\ M>;&:K3&'#)A;_:_'DZND*S"!)I:4) A)&%.3( $X HXT7"MH)&!W][=JGL/& M@%']%)O;O H,'SB8&X 6*"0"+';5*M3F_M;$MK!< F(XH2BR,-P4>O')281 M*A%:)UA+-OB2B$&6!..02;;C)1E.3AJ7OCJH;_SZD>V<^&XXRJ*IZF]:7$;7-C-O"BZ7&MWB\UT:V\D M_=O[ZUVTUP^[4S5K#MIGZW*O5@27+D_L@X:R8[:/B*K[5 M^=_SK,FP3\^"?]IP9(UPYSRK,L7I]YJ=J7Z^*IENGSJ?> J_=T4O\,%33%_P\@]'+6;J)R^[JI>?W)24 MR^:=JO+EM_I^OVW<3]]JNV^OKM/B=W^-YH.;=N7I*WV]OYNJI0@C "0A*B(:0_L;Y(E+ MW@B"*;;JIW]*9A0DAD,)L78\QT)PA8QB@$ *(RW?*C1L'W?\ 6$WU+RLTH%Y MZ2E6:X);]_-#Q;Y[4RRFJTE]\%.N;FYF[GSG^U4^N?(QI'=7? ;3.DO6CKF$ MSL(E=@H?6!:9?9+_^&WM/QE6N1S_$>\]7.?S^M XJ)[47:S.A?I/U2?(+WKN MS?K$"__/QH3\T]4/++ZY [361_$Q<%ZV:8KZ*&KB_*&\G>!$W![:9?$ZF6?AO.Q'YR> M'QPEW4XGW"ON ?;R8X\P;O,U^,BWGGN[Q0YZ_"^VRUO?(>P)>*L/K';+#GK> MMLGQ0-AQ?$C 60PTP)(J&MF @$D2NS0N-=8N)QL<'ZU5^1\?53M_N9Z[G>78 M$ @%VF5"YR2E.]UMJ'=@X,Z&,;?;R^TW0!5&& EB[&=4%%/XJMTV3/I0T!#0 M87?;,U326AKK8(."SX4K#U[>?K91YE+-I^[4\<:Y/MNT-L3,$ .2*.*IB4$C"GYZ/'3D_=YL^.G9O;" MP,^?]Q;;&=Q+W+'O%.\6:]'.2N6AM].QQN!L Q073H3>@[]9.A_[WN],JHQD M71<\KY.T/FBY+X_29DAM%'7NR-:K'&(7'_4'<)'F19/?G:^=3Z<=2,99$+MR MMVF^7!5MI)5?N_#$]6O8\2\=0Y$OW\LOVH*_3CNTI<3V[G:/^C7]3S9U@[(> M3%I6Y73-]5V44S'VNNI?.\"FM\)1V,^K3)"[T)7+S4U=_K3?A>$YE=VAS?2^ M[.? &N)1W< 8EPP1:G4>(8(RK@'!% D1(U?IO!/_+L2L5QI*W8)7'LH&641%:W6F=0, P1TA_ OHJO>C=9ZSD= M+3V\ M]VGX4"4N^C]I<)NEQ7U3,5( H1<^NJD4;-&9]Y& S^QCD?$'\OIE/NRM_S^9 M]9UF)YE_3S(?OT-1IQ_$>Q?UGVQ...?=QY[&6VN"S2&^M)M"FC,+AIDV^M:QGZX^YS=UYTZ5MR?&5* MKRGKKSN?IU.8_/_\()X,DSE\.$Q^["WTLJ_M\F9OJIOW#$C6KC#^X0D+7NV> M1G9N_@A\9V?0R/N.]?A&=[!XGH82]W=W]HL.WA=TZFGA[S;P'J)?_R+,ME_G MN@!W0N(F6& M$ZQY8@07L4 &\CC6,4#2;'VT]'/V&$!C"P/P]]893&>^6MP7[Q:WO_WZY?7E M!2@D$(0<\WT - ZRFU^L[^^#31Q==#XFQ-63)CM"389[^($1C)4&C'.$H8D( MI0Q2K\D2H"+ -ZJ?GJG)Q)XUF572(9?H_6JRD:;-7L[@D#[AG:,GO/-#A(:& M&'75L,J5.'!CXA@KHD&,H/$2FB &60+TWGP-HUXOH13*$+ G2QF?(9^C]1F. MP#4XB*G94-*A4""4HX98QP+9/*HB:" MQA'> .H9W*(.+[6$TQ 3>M12>TSQHX>9>ZV [N!PY\WEE( >J@$&,1#<0!KA M.)&<"@PJZQI32%BR<^OJ$5C\4G5O_>)K&0:36T!#CH?TAY_:%:,UNN_*MAZE MZ,(.GC"BS+ D8M":6<8 T;W,3N7G2A%"$1\#V([KL(=?MX MYZ]>/&P7SX&%SK)7R?2QG%<]-3?'>Z!%"&F5(HMB:HB,*(16)X)$$A=O",1$ MS F*R>O]F0$6+_OEA,O^>S MF=TN'^?+='Z9VU%67$W-6P_C^2L=Q1A0JB/!8RY,;/_GP#42G'! UT 3(L:% MT!"SV$!@$&<2V"!'"0,T%U _#JCRY'T.DIOL!8P;S9($'X)UP_.J!I;VJD76 M]JUXDM<*K+ AOPAN[+[* F=$*YZO'AS)1=#L'=_'TD"(]-!0[D4Z"3PS5)5^RX+S+)LW-*\58DC>;LSZPF=!.^3<0:(NW16L)O$P)>>KI7NU)11T""7Y MM8,F\0@M/;K"65HN@W^OTJ;!+4LG5[[;*70-;M^OLGGFGM6Q'CKV@LED500] M<.6#)Q##)P*Q$X'88,_RY@1B^'4$8F0W5F-0(_'#-A.UA;7\<9(7D]5UN:SH M"6H,? ^-_WVQFDT#JTX=/M3OV>S6O3SW2M9J\M4DNT?WISWF5^=06AUNHRP/ MDC])BZ(B?/4Z/JS1BM(*&K="K/<,3BXNL[>=9K.:H?7:L8DYG>\ VJU-\7>1:@!R"L *V#ZW^VA640B(C@4F$F8,15I"!7V' 0&>-PW&4O>! 2 M&0H@X)K8?X!*F&+VHU!@1\*G'RY_# M#QZV;T+OU.2IU?S4:C[ 6Z=6\P=/MM]MQ_&IU?R=+ORIU?S4:GYJT&R",8DS>;ROFJ-36F$ZP M3SKK&'66H-V9G5+2*B<@) 1&,:5B$'N=A1.9<-?BMK7.VF\#^;O76<=4_O]^ MV\<9Z)^?Z\2^3BF.$P(B"!('\.!D,8JX2N1._(K7W1LM3608Q)1PR6'"(U.)E&/XD!O-XH.8MX%$"L!MB,L.0:3>17I@ M'RULQ]6#RG GJ$ISP:&FTE5 FA@QH9,J=H9<4[K1.?XJV[>'/C81(CFH<_K2 MG3%:.WK,,?5)X.\7>-KA,D::2Y4(F,0&Q=9]A(BJ2N 3)$T\K&7>O<#CD*%] MMJV.3]Z/*AX=8^_;867/MIV"@\VBL5X9EHI8@A!.H * 2A@IHV,421PEFO,( M;W1Q/.Z]#((3"UA(AX6M>;)C8Y1ILG<0SI]TT7O711QT()2QC:( 23"@(J$, M) J@)%9*2H!II/AS=-$@W6,HQ B%?%"0NP/513MK$NLWIPS=(G;W[X=;Q2*% M!682"^%\^)AI[7B8%< RCE $]8<^DSO64EB5IAA 2.%(8][[51N(Y1YZ4BMK5@6]D*N(+1<7"R_IT46 M!A,[*0N[9:KZ85</*6?#U M*BO76*7;9BU'8YT&ZZS%YZD=2M=D=F-WZF+J&\SR:U?-7#-:V_?RPM,A3USA MS7DVSRY)&[^AQ[@V^N^MD-V^_Q:CAK_6.^?4*)_:YQC2B:F/=58+TA72=FKU.Y]:G<^E1U>_SEU@,_[*-Q M^VG53[76IUKK4]UBF^607<:5ZYA*2FT &;,(4)3HV-4M:AI!%D=ZHV[Q$2][ M',1>@),0X;T@%H\S.3(J=3:F#.Y)EQVA+A.PR]A"D0 D(PX(58P0@Z'6E2XC M"!.QT3?R;%VVW\IL& H)0\+E^]5E1W46_FYKLP7JR/!E5*I*0BCWZ&\.4EQ(,0T2&)!(=K>=P! ["D0L:Z9HH$X[C&,22(V)B* VD M@%?&$"EDXM<[]ONNXV84A?@X!.U=I!Y.%%^;\MEK/K:,/K]RJVO3Y?B1/)-4")YA$@-N 4JC*K.B94 M["7&'%YL8;V%8U%9*(( M4AU)31))*$*Q2DB"S>MCCT%ZIG H$ @) R>6FU,2X:0%3UIP""W(NH9W#(B* M&&>$&4&!TX>*1PF,L$N@$FV&< X'T8* A&!0W)ECTX([:>,ZMG8)U]B3SNUN MR&\\'\&JS"Y6L\"UY_CFB W"IU.+Q#Y:)-"3+1*"/=)^0%[0?_"FP=':/>#= M=?T X9I8O,@.?&U;Y,;N,0WL#%3>TH< L^H]\*5NJ!Q))G!' M"TY?O][O0BEXC^[=*H4/<(!]*E?&S!(3X545[>+,ITYH@5YY<^8=-' M2GD4OR'"&F((12)C3%DD$5;(0:8PH[ "!/<)\GC"1)1P3A$W#)H(QM)^5"5< M)U*P^/ !&*HWW5#D7%X&;\0]^REL E0'P4^ZY[8!4W.OMW#6;NJ2H@DQI2Y0[!M>.M;CFKBV"=Z=6N3^YXM2NN5T]2ND[0ZNE< MY]6E@^OTUJ.C>#R5B/>OTO9:C]0/U4Q=2@Q/VU,:_6)J1?@S"/0N*>H:&<[0EG[>!5Y^,8\%KT1 MA\',49_[@2Y*__!E-IN=!4G[D6J2VD%/'6*(DZ:;S(M4D-[<%&EN58E?U7:N M[0OVJYZ9O738.2Z;=K.8-Z2Y=HZJ-)MC/D^7J;W!MVRVN*FNO[S*BZG_S*V] MQ.+"CM$JGOH6_OYV-/;OP,I;-G?7=K Z5I>X$H/U;YP%L54#UWZ+VMFX9PO, MIP^,VCWWOU;32P\7U'^&92<,[=9PERCL!IID_HJ_SQ??9]GTTM,0V\Y M 1W*VC'9P?[+WKL_HM*QN]O'\1;&/6NUD^JANZM[L**+BQIBZ+;F2?9\O^Z3 M=O/,%]>WX=JLU!-OWYKF-<>]O5(^OZA\^2?P@@Z(/9Z M3P_1J;KK;W1K[UH)BU;+WWO.U8,LV/7+=B+<@J_N(!NE27%XKI)%__3:EQ3 MIXJWR"8@$0'.8Y$D"8-Q!#3'V&43(FQW)<:RETU D1")5$I%QG"<( $=?HZ* M(J@HB=GC:) " 4-)Y+!V( 926DLI,27*2,*19O0PT2"W2#_X6T[=5O6:QBUR M9N]3KYS56MZZ>FWPLCS$5BF08:3AT\J=/E0#KX/M(G=QV1I"K(VIIJO)TGMJ M959\\]%<%=I]O\JLXOUN?0?WO@_UYBX,G37QNMW"\[+2'6>5S 5J-NO?M.>. M?&_R#8VK4MHI+B]R%XK9D-&&?5Y;N:!P<6[W@5^ /Y=_J2[L EUW-VLUO/IP MF[=8S/[[(G>A;8T<&UQ8T:H09^TO];-6CV?-2/UT;O +.S7-"] M>>KC1A>'VH]4TS"I9;6L4AC7Z;\61;Z\;3YT_].F=L:"FX5UP'R@F5]G9X%Z MX"'=5]/V-NX$J1Z^'U7]U/83T]S*Q7RR?."ATMXCJ?9R;=#=6ZPJ:/>WG7E/ MHK*E63JYZMWDWK$ZR[WVO%ZG.W!4.QU%9F>O#I;=E;_[?-59\,7-8UAG=:S< MA_X3"Y?Z#I;I'WZ.9[,Z[^26L'F0ZE)%=ITOZS%>NF33W%D5=]"V6EZYMB:L;CJM$A'NH:O1N"'>.(OA'WX^K=:W4DTNGV>=8+N3RR=2%6^CM5]H M/4OK+DRNHBKYY:9>S:=.F:R66='496QA1#DW!&.-2&P(A1'D1ON4?!QK^SLP M/2.J@,.JT'&"8J6%3*(X<2GYA"A!'>3YHT;TR?O #2.Z-W-63:7?-[WYW(M- MN[L%7^>H/YTTV&(9N@GIA'YRE1:7E<[I4I*5$;/"O"H*EW!N=EV3D?63Z*\1 MUB+?TR1EN9CD7M?Z.+O^BOM @](>W*1+EZQUBL/^Y=*D/F&;ENT]K>??9J$; M0]J^MZSRI=77V@QG?VPN 6[UT_>^";E[&'&VF< ,UG;,QL-:'\$.=\#(Z[\> M#;U@OYT60D@9HP0;BB1 2 J#=,)CR4TD$'E(BUC5T=OX<35EV^0,7LIF#5!H M@\'=AEQN[=N;40X M%&+'JU"+774B<1CYF)?OG,UZE O_S\8M!HO$W4E-Z8Z@K,::W;X\P__6_HR: M^LH.EV M33KNT%(Q3!(N.#! <8HE@E1P9 27-C7-7I$D'9OQR40(15/HC@?DAW''?:7 M-K'5$$I!;34& AI8*U]-O<2 Z(U&WJVF?BCC33D*$7R29>QDO$_&>^?&^\O2 M3GI:3#]78=0_TZ)(Y\O;AZG3F**)2!(E-<$4$:838RAED4Y(HF(B>J;;AC2 M"2@3Q_2D-!"N'M!8?6@0Y @E3YQQ/W&?-S/==JJ^Y65;3%-/F':,)WV(= M?ORGSU-_RZ>9#PVBEXFC%-4D82K16"AB7*4*&A M7P( (,((LKZ3C$QD8L49QE+KR"@3N](#8D/$6*#H\?3>D_?9D+1'VVG3H%Q= M7Z=%>Z[0+M>L?G:?Z"VKFHR[%6?M>?43VW*;0;_FF=%K:UG>J9W<^@Y_[2NT M]2+#;:NHMEK$4W?V^FA/!';/O]F)P.X]49F-A<#NM/ G#KMG-[B]L'Z^<4^M M[SWSA1*IZ[.YS.?SNGJV8CX^<4*=.*%WDD_':-^8EUN!% 0 M8Y8P8[ R,(DPYLG'?*BCILU"B'>%3B*1)DH 3"@T.L8 X5A9>4P8E0E%9B.5>K\<=C/\ MT4[P=EU2+P6:%"1$D!P#+=9["F./4Y!DA^%OW>T80Q,#:\8((E()5S'H!

WM.Q??QD57]^5 @Q[(0PBD'D6-PC MQ_B8(&J%,'%"&$50$(WX=D+8S/-.K9@(Q7XXJ#:WZ6N6=8CHZ"^GB'@W1#C' M)MFXDVQ"1^5[&&6R[!V$\2?U].[5$Y?O_HSQ,-73SL!PU\L$ M7P:'.Y\LKK.OZ1];=*DQI P3G,H$4J2 ,AI3U[V$N09&ZZA7@)N0*!+81@8& M),C@&$&BD-% M=P@N7[0IFI)CGXZA$Q1@\O$SD$K\(?T?AA+],_&M155VB[ M5K7L&M,JH(8*0V.:7]@O9Q[-]CQ;?L]J:)B+%O:P;& /*VP+>VU7WNZKGQ^X MB0?#_9Y[_)ER-:MP5](_?#VHNV7F5%H%A>?!7=O^^ HK]"SXLG+P)P\]U=K] M;NO'J=OKW/.UU??9//5 )NZ;L[0&32T\?FEZ MZ\],@P$PJ;%/*A33]J&J$9X%_^-1A9TAZ#!7JN^63IGDY56#OC//[%NEJS'W MP+UV0K+N@7OKU[0 U//4'X/'V[4;ZS\._N!C-T6H'NX8?\\".> +Z MY$5ZT$$N%)F=RS+_EE6/7VG$+?2BP(8GD$3$:CF<*":BR(&)0,:PC%'2QQW1 MAAL#"(" (P:T2 "U^E$C8O^/$XP.42^^ K<.AZKZU6%]>>!\H.U^6_VWY]_ M6I3E7X(_.Z@C!/ZF/IF/_E?XM[\,AQ:^-M:A=.@Z!*@<#*'VG M;2>/MV>&@1.E&FW3;P:KO*V S@/?2#Z?U)AL-29IVG63[4+UQO6&^IP57ZZV M0WJ*K!>)K'\I5"0TBQ2PJM1I7&[5K20X[K>"&:X,MFZGCA(D% >)$D[C)@I@ M0V+Z:%O4D_?9;+H\ (7]V6:K KE7@%VO\[JQ.2[L7&ZWE?(Z@]"/O*RX; M:DYJ>W1^:WVU;[D'>.HIXL:]\="FZ7)9Y.>K9>/QV4]<+]P0[7Z]LH-W*M8C M^#N41?=(SK-Q>/;6_YE[6.-:^?EON=%8C;=:.AX(?]^C@:&G)QCZ$PS]\<#0 MTZU:Q+>P&GOJPWR5XKR#YWP61/G,!_HOTZ4>A;73I\.HT'MTYV9\Z4/1[2Y4 MY1H6J]G4!<2YKP +%JT;:[_F@ Y\LF(VJ^-Z.RG.>;VQ@F:WA16I16$'XH+Q M^J*>O&1-V=_C1@V0R].KTNZDLK2!Q[D=@$]A/ Q<@0EE6L9-V64OL.:9+OR,O/:7$&E)!6\"=!N?-7$RZN:@0)[+4P=2Z MC^5.*&:W-2=3WF=>*ANB)C^0!N36JHXPR(LN8G'RYBE]_E@V6)=SQWWE^!8] M6K3']?5\2%FY](&I_:Q+B37?[-%3U:^XH#2?UD!:'01UE2"L\3W=Y_K0SST. MKH=OWT2]]=S:1_$T6O>/XBZ!4J5-ZS?S_HHYU7EWU?I(S6D97"X64Y1Q?T;L3;.YYVGR[TZO[7*7 M2S>IWUJ\TC[*Z2[B1\?2Y5*EV3^J/>>:TH(98 M"ZUH3PL2#)6 DBK(*)*10U5PD236VKXHS>.@(D_>YYU%DIY:S:_:^#5GLL9M M-\TN/ -<6M: ]!ZE?=C=FDFNX^RS0>1-FD_OX+]WIP].JMWM?Z]$SQIFQ;O:O57.]HL]G>2=MYD=J-4Y#I"X;'1@ MAVUSE5MA+R97MV%]M)%O<,+Y03OV/Y=&LIHLG]^LNJ.';]V91JN<[X[[KR^. M1-X18HD49QQR243]$[\.OP0]B5_BIOLA;! !G@,.8B?IH/L [CLV^,FA'0?P MKR^I:GBCJ1@H;/SAQ^Z";_ MO)I7>>9L^I>*--5[/P[?K'9['*)Y3XDY55EYA]6%-H*J[3?C0>\Y])(]=]A; M:YO]Y+90F=MKNW3M=AO(?: Z9&ML5G,.UMO+31ZXM>>M\0Z#+/??GEKG?+)T M+#R%I_2M_JKX/LK5N!_;@3ELO8!L3Z\RKG/LM\KG; MQ&Z/T<4P1IC&0F"EJ6!(,9 (HF'$J.%)Y#C7?OSH'/O?G8=]_ZJ485\'U9K. MPW9>VWER,<>J;(J!TF^IU7H=%7B]%?P'[-+75^W?Z,(E,QUWB:O$J>N4EL', M25KKI/<\?\^L[<6P_DY7Y73_Z#U+F77L+Q>%3QOT=7E#TUW6-ZR&6Q=$E-OO MV\TDZA#,?M8)5RTMT^=B,;>_3JH5V3K%H*0T)$8L9E%$80248%+B""=4&A,A MW"\/(BH6!F&@ :6*4"T3#>UG!>&&:T/WD2-X,OP93JG7P=.V.8-?,G_)F]KN,M +^Y_F MT$)]^=5_\P- 85 74/V4N5++NH2J+:NJ#F:^6_&S[P9E?;GF4]9G:F:ZM)#NQ? M?ER..DDI!4_:9\JRF>'\^OVR[7F M]&KN[J6KH3;E8VF]V3TA;COJ;HS_*YW[;5(?B;KBS>H[5?:F]Z5PC5PJJWGY M?!++>D;N/,S31CJGV(5=+GT[S2L,XXN+*LOL'(WL_/8LL$.T5VYT7%6@6E^L MOD'H\N4.+*^JYKQR)X:A/^E+"SM<>\'O[D&LN^Z<:+\F3?*IYGL^"SZOBG+5 M4_W5[1VMM2_ZY*H&JRX(= M@Y;WS?T*V3']I45J'GEQFM_)^R.;H*#C^4#",*&88?87FB1$<*"BB!B*[:>, M$G>-[*=F.;Q^\@OYZ<(NH\]>[JIWCH: RQ#")_M3WJA&\&6+T#%^Q%1A!E , M.844(J*) 9Q!9OU5F2BV05V]O@@M+/ONIA]B%K*GVX,&+'N\2TX.Z5T*S@>Y MR!]1/;OGNAB[1_:P'Q94&#I>"NR4!_^?C5IJY^T87+3_M9IG??=,?=$;[A?$ M8:7>:Y/4^7 ?V^Q.Z5TLB/X6](XPW48SA;7 R^"GJBQ[,:^N=.\E:CNWX97U MP["*<[=CNK9W:%M )M6MZ@IP)Q=='JHVG5?9;.J+L].@M+MDEA4]UV726/W> MD[L ;MV9ZCL@G?^TYL(@[,?IS[;K<^ZJ/<4WV53,SWV9_F=]<%69;1L=9/49 M4WUXY>CJ)W5 V1^;[RBZ2EUU047,L5:F?D_#TE/%SP=4ELE>7Y:9>M-3,BRQ M9#I*#(IIC!(5P1@H3!02(.'4P^*G+WW^4SWGJ9[SX7K.=V5IT5EC1>[^?"GI MMB642 M:EU_NZ"<$^N="FGN M[GQ M:\:-MBLCQBS1@'&M@)V[A$BH(T8,M.I5"H[Y!_!X[\I37]]1%?)X:HSJ/=YW M>0[>ZUQO+*QS;,Y5JAZUX@-=!J6=B/+"I]A<4LE'-0X+:7%N1UMMN//;KNJQ MUG7NKJ_76)'1+UOQ1AG7>MMTU?SNMP>[6X'Z)+WO] MN'Y53FLP4!;798B;*NEZ"?JEF[XBY339@TRVLCI]\OA,-QF[;:7 V;;A%F=; M1^'QU7E6(>N(EN>7]>Q2WRWQ!B$MUP^AGO931D$E/)C+5G5+N A^O1#,%6"X M6NEEY\KY,]'6@%;VL[&>SIY>9?Y@S4_9S)>:7?O\V%GP)9TY)\VC#;D:X"K! M5UVON4#=R7&=+_LY[AOK]5D9L@-T7W>NT[]615Y.\\FRY?>MP&MJ3 A_T=+? MKQEW71??/''C_97NX;+9A5OHM"P_-"Z;?7^ZLO[@A7<7_&";(^!J>.ZOLGNB MVI-8UBT^74[>/Z[+5);.:^UW 1:+29,!=;_7;4&ECY2L-K##=DRZSK'\C&Q2^,;&.RV6.3SJGLJ=]A#MS?N%-K*AB]Q*^W* M^!6\>YU%A70J@+$2][!T55NKWI3-A]IBNO;PWMYI MLKCQY^;5,7=S)WN)ICJU*5_(Y^6J<,HM]/L\/:^CU<"#\5W6!R9NQN\K #V" M':;7^T2LO[3J>MT:5NQUZ^!Z)4*O%3O%Y5/VL]RJ!GLU;\C*RM38RS6E:':1 MJN18?GV=NL*+=.;:E\M)U:5N>]26;6[F.0^$]UJ9S]A->7UVDRX!E(O M"!^LC+=DXRW2F_](<+E*W:O9W0W2=DJZ@IJY-T&K^:0ZOG6E1U9^PJI*Q4': MA,%TX4&,BJQ&);*7GN9VINQW'DJ,]*2[3J;>C6WM.K;3T,-'.V+K\,_J^.W6 MJ>G- J$>G%1=_%[;3+?\Y\LTKZJDVOFKTU1U3VAPGDW259DUT'3%,O]/M1)U M_W[55^?E_MRUP"WF-0R++QPJCV!Z?[67+BH]]Z!)6E.,SLPXERN=>JTUS6:Y M:S)N[+97LCZM=E/U*P3!X6MTS M4G?T/[NCI:U[:S7T/3?N>\/3A0,[6SA\]J7ONJAQ$O(*;,IC*5:J>C,+6"D+ MORE<^%T&EW8VEK[2+.VVB*^&:XS%I#+$R[LCJ,^9':YA5:WL"NB^58]^X3T/ M[Q/6D^N9GZ#>_"BEHC/;#)-\ST0/@<]QVT M^1HW-9^V!5=?W:(\>OR&$T@PH@E1Q%#C4'4=VJZ$$5$42B1[QV]0"RQ1 B&* M*<5&2X9H9+"$L0("*?WH =*3]SG(EO47]']L=9*VL4>^KAU!5,W YFEK7J>0ZT[[I5W%XP,DJ1I$'W*H/*@-H[A1U;ZN",4Q+/C@5GC)YBU4UG. M2,IR!BBO0*\KK\!;:?4MS-L)>^)^[ D(P.O0)LB3:!/B$;0)^,A;8JNO'1I= MY8LX1705"X0;]OVNM=@[+?SXV&->P?S^ML0P(N-6X[6=-XFDR #!E&:(,P2L MED1:2TH9)4(FVT0D;21BJHKJ73&\PY #&&+*]D'!^;;<+^/CUGO17KQ33^G%^:==FAPR;NQ#=S;W\FN5\;R,V8_J -%CU8TTY5 Y6 @M= 0ABBJ+S6Q $W5M MFG_<9+/'%8"-DPMWU.Q+^M/RZIR8(OL0)5: 3F)C:YNC"(LX5LH*@"1:)D@;$9,82(+!O1+[ M_3Z)K1>A68/>$@PIL__)BL74ZH.JT ^BO^V1&'O\4GL4=OI>'(F[R;I3E'_( M4;Y '?LKY#0RG.M(F20F! MM$HA )%A"$XGY0%'^(!RP)Q?AL%R$@6)\\9YC M?$%([P0^8BP6.@&)H#$C+$'4RRK'0 H!!X_QY5"^/:0AXT.R-Y\B_-%(^2FP MWXV19K05_"@&L8D1(U(!CK3B,A&5X).(*Z%W$M@/)?P4\Y")D]7>A]4>9&^> M(ON7BJSH1-8@)*41&FHN8DV9(B2J(OL$&^MS[RBR'\QBAP ,>IAV"N['%-QO M5.>]>"FQ7V"0O;X; M#;D.V/_,DM+[KGQ?%?P3178" 4-)1"/(H UXI9)"8DJ4D<0ZQ8R^%L,('&;1 MN"^'R9L4!1=R.:: MK!N,4\_D=^OQF%MLYG1>PT"790T#[=H>SYI&E_:>5:=-42'TN$9A.X+U9B,[ M"@Q\UTMH)?LFJSA9&VJPVZI7MFW>K;J\*\_(M<^W=NP MTK*A^7[WTO-4MJV0&RR/33_RVKP^T92UAM>]30N,6_B*4JF%WJS .,NJ5:=/ MK=!AK[MF:OM8\Z5'^G1-S'XHY3K';[\YJ&2-90*4 M,4Q2#1*1 *.<0F.$O-.U6>ZC M>IS?MNUO-;O'[7Z:5(;I3QDC;O/[*P473Y:".VK#EY2"/_;>X&]M][4WS3DY M&N(+*^!_O6>)["%?=WV+PPC#_M MBF/?%?<5;8PE4?WZ!,T]S_RY=B!JW^V5F^8(!.38G^_=K.6[R%)_3O,*56U9 M$T%=Y+/K4^'9$16>04"Z$S(."59 :$B0ET!+,+8L(3*!":1,NB9*//Q'S4] MFJIA^[ZF?SQX0/9;62Q_J\W%I^)+E1U3?^3E;^X\KGFGOJ/?EY_;;9G87?D/ M'SZ^/OLL>8@)# 6C1WT\/BJM=>@V^*2J]J.J6%=XIS0@4D=82BII)+2&U"@C M 96(0(/U;E25&)6J$C0DDH98#'I6-CI5=3P!T@\__C.?3Q??'W&C#KYT]G$) MYEV9NX$1(7$L111SJK#0@G"FF!("$"/ 1IG[FSD;U9H-*;@06J$E(<%\0,$= MK2MQ!![#D4NE[" F%%%V&F*9(*6I28@"[H>A ,<$P$2.QJX.+Y76\0E52/U1@?F6ACWL%*2$0C "2"*J*(8JUEPB*= M2,$086 #".K-K/2@HHU"CF (Y7%GYEX6[L(Q6NA[#@2_+I;I;(2-*J.NY(:0 M=K*/)<38"KO$/+:2;TT\@(KPV C8BIVY*$_9=;KNS5O#A=9P\2KC%-)(\8E5"*V)!(:(15$O.8;72=[\?\[T@%2!I2 MQ$),AVQ6/TP-,,Z@_JZ.:$IKQ;-JF7=<;O9.)N0T":==<;3'9_>$$[7].=47 MOCL/\=C7-3)RE$IIT,WM2?UM!?UA 'J M*IX1YPD70F.44*6%0L08$$<1CV4"\5N6.^Q6/:&0,A9*-FA2973JZ7ABGQ]^ M-*OE>3K_/9@4V32_RS/V/@J5,.R.0;3149Q HH4[]4BHH%@2$D. D(1&L-$X M%O6ZF6K9ABM60A2'# XIOZ/U(H[ 63ARP<3=X035UM='#&EH-%4$2L$YMZY^ M#!%3TH#1F-3=""8+H73">12"^2Z2$!_GY3*=52A%P2P]7YQ*"M=DFW:R+3CA M@E&$B")44BJLH.-$,QIADQ ]'J/;7].?W)(.)]X,@9"B4WGAL8;U[U7,>=<' MG" "B:&44X:I)+&0@$C"38P%-F!$)GQG8DY#!&'(\ DC^U#"XZ]%FL_M_498 M6/3VLBU[M4.4"&7=,!3"K*OG06?%G: M%QR/8#G^9]E@,_:4@? Z849%0!/GO0HCN28JLAXL!(B( M#_A1PM$GOTY^>+Y4]BW@&Q&.ZFR2KLHLN'9LDHN+8+$J@MPIB'E:TX(VU)>. MS_'?J[S(@I7?T>G6VF/AMF5=,FK]:4V7_ M\ENS#(/O63!)YXX9\MQQT17+U'XN/5^L*@;/U6QI+=0RLS;-SL>\91JLN"Y] MZO8L"%[&$MDSP?$?_HEGC?DM]>W?L\5ED=YWXE/W0?>I9YT M/(X7BYEUI>UFJQD=B^RFR$JG&OR2N]GU\VSGMDP=8>?Y;7#93H']^*5C8@W. M4^N+.-96]R5/+.HI2]UU[3?;U6K8'_NKUGZUY5+U^ZSR,NQ.:%_V&\;?S6F MBHGVPGYL491_W;27?=VPA19X>O).C(^;JN3$^'AB?!PB=\T?REW;9]EOO=6. MF/J^?L]FW[+@'_:=JS*('4&M=U/N(ZD=ZZG7Z2#C1/]YVA7CVA6OHO\\Y!:[ MM7#AK=$T#BPQ>[2)5\8Z' ZB#8MU!"/&! 40**.$0(Q P"EBB=AY.6*;9.DB MQG3FRX@F=NZ7Q>UOOWX9H'L0A(2B$&&QC[ZB<29@1Z7GQG0Z=5)RQZCD!.R4 MG"*<0RB0)+'5:E(:3@&-@20FDE+OGK-P/TJ.L!!P'C(TZ"G482FY8^JL-%?Y M/'V/J":LUS8)K-0F2",I8$RC" LNDI@RDR3V'8KB$3@HYN3I]K84\+C01WFLU-,(D.M)<*ZUH; 57Q(F11E C MB4K0[HE^MQ!<-4B3H80HI&0OL?UH;>HQA^_O59A[K7X\@3!1"20LT33&0&DA M641U9*"64.U(F)]GA8<09AK:1PP%&Y1V;'3"?%1AJJ\9L1LCG07QJEC,^]D%4/,D)$ 2RPH $*+)$$L@C'B-FA-R!L:7O=NM4C# >(2*$,Z:-)I MM$;V/=G2PQ1#V5%@$ &X),; 1$"J))!Q%($(4T4429A\R[3O\&)(0XY)*-$I M>CV4Z+4^F__?]I;3Q?7)\>U)L8"=%"N-$Z685"("-(+2>K]42YX(B2/"P!@2 MP'_70]#6<$%".FCV:7Q^[ZCD>:R&]\AD&:,>=P0F2AKK+%-(D95EKF.*!621 MD(329 1![!"RC$*.Z,"V>'RR?$PQK"KS-/B<3O*+?/(>W69!.R&%2,LXYH P MBBC!D5 $<4H,G5+5:_48("6(>8@A)0=@^]\"F$/719Y5[E$ M$::0X<3&L)0RP02,HT1HS3!G4D:[!WC;NRQ:VTE)2.0ICCV4./:G=)G/ ^4[ M"D^'L6N2+#M)YI$Q$$E)F?U?C) 4G, H HJ#R%H?\\96U2]BO8;#B3*0(A3\ MN+D<1B7:8S7$QR77$G;-Z"@&QG!-F#&(*AR+) (FBF-"':6IV%%Z:FL+O0NY MAB&7,H3B1&%Z*.'M/ZPVF&5!G);+_U87 ]CIPQ1;W(DMYH(+P23C E 667\3 M22!0*P$(*AJ1(&+_1/.2 ]Y/#U#DYQ'TY M9IT<0V(=8AQS8B).F4,'BE4,=&QB)@05.X)RW-ZR^M7KWOK%0S,-)LR4A!*> M MY3P+M/PI*WEW\ANH!8,Q8;1>,8&VO5$A4I(35B$!L1V7_>VH[O5/ZII"$? MM(?OQ1MI_#[ VE8_\0.\ (3@L+ &MIR!0X4F-S%5(-=24&[<4]_^_^R]:7,;R;4V^%MX[X8Z!Y-R7]HPCZ7RZ^N7;L6 M:X(.*S]HU!U=J;LWY.'])OIV_23G/VYINA<)1PC6"Z,T0);P3!W M4BN#%"9*1<9)4'HM]>T[Q4L=Q>L)XJ7?KA]+="M>==.$<3&OF?,'BRD8@VY$ M+NG.ZR*?9D6BDL[6FF1L&4)N,-6NF=67@:\#^P@&KI=-B]E5^L+78G3]=OTM MLYON0ODC+Q\V\XQQ;+4'\#HNA-*16L*#1X$Q1@F"E_QSWOIBUS[$C4#E:4T$ MOFO*JU_3Q'!\_??@8/IW^,S/O?1;^ZV\G M'W\+[T][V?MPFKVTN<43WN8IMS$F!&\Q<3$$,&'<:$*D=5$I03$A]@WZ:>,N M\B9:W2R%JE1WQ5*BTO+.P#[.EFUE5IU2?GEVTZ1C5Y!7[0HB^/,:=3SS:YM\ MV+$1Q ^C_+]WFV-#K/Y+7ZZ:HML.W6'MWQY%85T4#K;E0UQ,(?(#%Z\TU.<0 MU<&_C[T?NDUAV<&M?HB^6"%)4Y&$P"7%TFII,.>2!F.]B\S3(!W14JY5)-T; M5?PZG^7[]C:6$DP7!=K^>VN=@$+U5/Z@"G2MTKY;=-) MYU'A[:'"8\U>A0X""6^409%S;9B11'O*+5*6$0C37ZSPU!8J/,U%CPEYN.IN MG^JXW.3R:@$N=+/_4-Q+8UP05#"&1;<8&2(X<0)30D1@K"U;(57 M\V&6*[6ZID,'AN,>V0]^A$.*S?<2BBW26ZZ"P3I8)1CA+B!%3' V4"<$@K#B MQUG7C4%14]W3N*^ *17OD6*6UMU'^84*Y39HK%9AFCE+;%\HUN,:& M<1TT8!ICQ_ : _VK&>.NH2PIZDEQ)-K-Z6\-7L[4;"%@%4SUQ)-?<-^.YDQ!L\=Q"D*I%H$@83+@W0?N@ M%44*"8P3U>T/LY$;@""2NL=1EQ[O]EO#70Y5WQ7YK+B8C ;9\/)J"AH@B<,Q M<&TC639(1@Q+1[###&L.AE7[:$E*1K72*RG6:.5?S9BNEO&DM8K=H9HE5+_. M4?;66MQC'+MWR&ZQYEKO@V0:*XM2RPBCE0\& ET+-MH9^>-L]$:1K1DXS>15 MSFRWWXSO@+7^.()'%].7VN==!*O@5\0I)8UB,GE-J37#.*&$IQ=)$_/J' ML645W]KQ3[U:78%54=UC_'@MZ@GG'O2&1.*22XY\9$K[%,E;PH"$5_W!%N>Z%/QLME[HS5&HD>1IWR MT>\<[=Y6J8EMM>J'I1A:K+S>1DH9N !:$QXH. !8,,&EQL@Y(

C/!'V#8JK*:QG M22!S]&>_!ZZD10^'+,&24RH) %C>E&&D/2)(C_-7Y2W=.E]UJQ3!MIK: P,]DRU.2$X]DUAX MY'ATSH9@C)>)#U+@J->.@S<(^DZL.>G!$'L0A!\TZ/FR5MY-;X V %Y?/^VE"OKQ6J:55>>QU4)$HF0T/, / MP2-R&E,4 I5QC;G].[5,)ZX1[5'%>@1M;N_^CH7\L2[0YGLUM :W*[2S;;\] M*_ZX*L:SHKN6!TN"\-D.,H2_[)6^Y;,N:?W_UX/*!^,F14&ZB+PS1CLL>?11 M(<,,@9!.&&VH6TO6;PO !EM>:E/83Y!6W0FM. F=8 MZH"-=8KZZ!FVWSWI7;7KD10F73WJ2+YHJM8HZQ]5D4M=.E@QV'^OWGR(\_19 M6A&\[MO)-"M($3C0SV47A$B)5&:!33=_+GCO\>,_'"\9>_WF1]_>^/X5UV,N[?6M%M M?-7WDWDQR^:3+"4[I,BE/ :(PW$^!HR-LE7'TMGVCV7-0I9*[0["W49Z;J*I M:P?D1HBQ56T=6,=M'4[&\WS\90@^8FJF-I\]L9L#0EQQ;"T85\QQE,H;)SDV MG# O&(FM;@[(&WBZ<=A0Q3FAEGMB'7Q',DL\]P]VGYKWOY[8 M=R$SGS^'T\]E(X>7]G%XPGL\Y3:".>V"E11L)DR#,S)R1HQRQOI@F7N-/@X= MB.]M<]@(49:74G3LX+#S'1SD,YLJD-?LX/"TAQT[.!PV;?^Q@\-1%+KHX/ : M1X4WGH%O&Z W&-\P8,_+=YWF@R)U$WRU!@X[=3BXPV=_G"):2-(P0B%EO&0T M.,09IT%I2;P,1/OHK75^;J^KCI@C?)^?Q;/BV.W#LM+<";9$OB M$)&!8\VPXI@3JT70E@BC$?,\VBUP2)9+Z(NOQ6C2*6<>Z1&E>DBL][_>)Q:> MK=(!6YMOO5<(EZ+) Z(<*Q^YTL%PRY0Q0G@5A"?(62?6TJE_@)W?(,)Q3U . M)K_3Y.NM0_A![IB4:6$N4"\ER@+3#? MY5J]A[?HS(EGFO08>C2+9Q>*(P]@RV"OL:APTZ9,*"<5QA29B+ADT00NF..> M*<;@QS88V@U@D%'M!^WZ,F1N^KGE:QT4^*O-^^HL9O&TQS:;%J$RDF%T, MKXX\U6TU0!LU@! GV'G)O.*<$5(V)!7!(J0DB6ZM1=H/,,FN7M!/[?7L;+>_ MAS#JL4[Y^;;/X]XJ';&M%GV_,,Y9JT292<*YM-YBKD5JZ^)9RAL+U&(FUAJ[ M_ !3OU&,DYYFLD?$?K/2'UI4_7XRAJF_O"KFAQA6JU:;4T&))H$0K\#!]T8J MCQW6!#[B-!BTQK#Y VPX+%:]5N;+M.B6FIX(U6-\+WJ>'@/L'4>E;I)G(K): M.B>,])X3ABS3# DN48R8LBBWP.IN%I6XIW&7)G?[+>N^A]H?YC!S1R^[P;MN M]3>EUG#D >O,& M(9PV.6@RH" B^-D64!XHTUI2;KC1GJJ@W#9LF6\4X9@CB**//:!VA?BK8J;N M3V8_@H=ZJS-+=:OG*E&4!4<=]M%R#$961*$D]0HEJXTZ.I3N@#<^L<;W%-X M^\R6I8,>H^!]AIYLM5(D0@CDA*.,<">)CB$J#+%QB)J#:>W&H';!<"T9Z8E- M-&W8,NCM1JC[0B&MZ*];1*Q9WF)%C>!:$0A7A476,VJ^IX!K@W32M*<(ZC&QN>Z- M1SKI[7$>CAKJX#54*UF.(F8\A/I,.,51TE5&^@B.E1*(,/L]8CLUU)&G>GG];5Z]MO-^Y*G>.9[J6C>U$OV4MQ'C:*TDC%/L%"7>.X$M M3DVUS5I*45L /IS?5D\;9*Z6"O= J^X%<_5R&9H^;QQYPJAVV"K)=91:2RXT M\CZ 1\O"&G/U=R]#5US6@A&P$X\6$[]H\FYQ66?/XY']W+\H!HM1,3E_P)[& MQ7PQ+=JS&2JE=IJ4_X.$LPH1,.,"8>\4"L81(KQ2P@D;C:!,M0AG&3.2$F<( M(LA3B%Z\\\4L&3%YJQ1[F9'RA['XK8#GF M@)8YS/9BFIV7(G;C/&!E.;\-1Z/L+$U\S4<[:]AHU]R%IS(#/VG^-N![K+L: MK8?NC%^#X,[_5:,OA:_P6M>;*YMNQ80 .]%V<=! MG+J#AL#'T[LV)%NMHSE$%)*YR$1@C!(N(DV0%$R[@)S_GF*1.R#Y3PC33[]- M-H9$1'N"'*LK=\A6DP,LSL*8-8"+G.'@+*6<:R:481Z)!#@N(U9:K06HSP#< MQ;0H-I8,BF4/HRY3L;3 M;V-X\&QQ-AL.AOGTNI=]G$Y@"C.7C_-!WLM2]LX@R[/S:3[N7PQG108( U&: M3*]35]@\&Q??FC\6V7"<_=>B."OZ;[.3<0+@N#K RKX-YQ?P)L-9ED_A\B\E MB\B-=\M21]!T=CF?U??(W'!^#;>5C2;]ZA_I5'^:^I:FF8/I&<(] MAM-TTRS_DJ?O9/"E[&I:?!U.%K/1=7GUES',TUW'HRG=97Z1SU)N=ME[M MGB?!"]?'JJ^47D!:>X':4^\-,98;QR$BTDHP(8V17"IJV1J1Q,GJO=>3"RHU M6YX=;S#=@SZ)0?%EV1XEFRTUN/LRV0R*$]KX4^3U#(< MOM?(:2V.C4" 1,#'MYJ$ M>'F*WVZI/%LV4D[R-$Q\.\7.-OSFMX_X!L]N^"VX!=$7!(F4"!Y!V)6B/-&6 M:2^EI>D[QX;?';[JL>'W,T:T^PV_><<-OW^M5>L3&WVK"'$ =A@'C,&<.1L< M1C':P)E!/K!6WA4A3DKA PW.<62#<0AAIX+&@EF5BL$?2D-Z[#EK>5>_?OC@ M_W'R[MU+6WL_X$Q,$Y59Y38+DQF/-.3)4Z]=H[;T)M_JTW;T[ MJQ*"9HO+RWP*7P%;?)%[)7J3$J!"JJ3$U,CCAD=4\1,XC M,H13I27'SB(1PKTNS1W[BK*;^G;%14^P_:9&?+)2V0'=8>!I)0O]@9T3)B1) MU+CDR FI8R16Z0(OZ6&$XMERK@ ,3QH(U1)BO[1HOL5HOAJO7XK19BE_SX?C= M.JO:=R-W!K?_?WYZ\["-Q*B'2*=G;R^5A 8,/[HFX><]-[>/N>JW=_6.O U' MWH92_;%6:U%0>8A%BKB*7*!H$(G!&*T132U1Z'):0G59=]/W>9 MH&'K 8>T-H99R:CQQ+ B'7[BWU%5J$V,] MKHZEC;M2W-'DPNWIUNV#^T&*-/A2DMO@"+&$:!ZC,$$3P3R61KC4Z^(^?#4S M>,_>3V=)@[RG.D76GFW<[++U.^[P=F0P65-A882UG&JLN!?<8*2B),A9IYBV MC/.UFJT7;?!V1@3'>ZA;9H#G+O_1O+Y"?*N/.[7'G=J[]%BKVMOXU$./1FP0 MXAI[XVP@7E,?K92>?D]LW5%W$(9$CW?;N7*'=VJ/U6%W)7,>R\..Y6$_I#RL M5)^*[EM69>"\K"<-%O80A+MM.1V^5L6Y!W_TH%2*+C J23\5<8$]BA)U8@ M,>Z(%"&HX")G4A@:**9,8N4YTJQ=@1255HP9@13@QB&F,?.6\R C!M^4D@ M>;#(HU21),!CMUCXUISAZ"D"M+"@80:$MQ0;ZXW11BN-&+T]Z">40CUA)C>/ M(2JZ!]%=M5%@(*X *'6MTW"Y5. MM>JD!G=R3F^1+CF\&A[U: V/?*A0Y\4U M/!W]:0>(JG]4*\E'DW,>V8G<\';>6DV_^CZ-I!XNK7[QMMY1%/92%.[*8-K. M!+^NC[2&H\LR&#Q/_S@KNW9<32>#1?\V8\+KEQ+NV&[W"^H,MW676V F"DF: M;MG$4FF$C\QSRCEQEO!(M"7&1,H,7A%Z_W%5C'[YD*AK5FYZDC0S'J3_*YO# M?*RE[+X6]YWL@F/:XZD++WX5(M/MW/[>*O6U34TPC\IJ#Y45:[6\0@K"=\(\ MUH$C)BV#H%Y*C@)U- ;2H;+J)!U6]ZC6/21>A:MQ.W75/F45E!+UB#.U\XE[ M#V*1-^P%0FE!'#+1&<2QX(HZ&02AC%)KG-.W]_ENPG%C[D&/$-&3:"\2T \I M=-U+N+1:HEK),*$<28XY]R8:B5'DQBF,/6)HK9?5HW#IQ$ !7 3K*7'D*-^5 M\/XCO'O^)9T+IAA_MKBZ&@V+8_%&&W6:M4[*,)'48Q$PY>2.8V6\ M>1AUG^O9W5A_ "UZ0CS:]G:GBS:V"HO;:MSV"G^JQ;:OH^14RNAY9#P*KIF2 MTM"(G=96Z36RCR?CKQ/K1PGJ2=IIY?O6X6^?XJ^58*16WL7T:['A$HUM1=]] MM545_&@+?DB*@"RBFAON S%"LR""LMQ%Q>(Z0_MR@O^>CZJTAT_51&]N.Q<@ MJ(AXQ<*+W:B^.H9^^PY3WL!4FF04)> R 15Q0PDEBCD A_&!KY48?Q=,NXD3 M%>\A?H3I;H2!4!",#]T3I MU"53,Q8B)M01<:\&>U_,-^9:\!YFN(=YEX2;SU[08P!^U$Q'S?1*FDFW.HAJ MH9 -$D4B.,/(T""EDA1++)AQ_#LU4S?>%.I)K7L"=[KUMW.:Z96J.&^7++3+ M80*Q/$1)D0J<6_#"N:/@=4>N#<-.WIVDLV4 MW"R+>R_R6:KK?84B7@"-*$1K9R*D# ]KM+)>\QB+23J;3LKF2RU-=S/R>%)#_J6_U/S=O8OX8 MSE9_^E1\G8R^IEO=?%"9!;ZZZJYW*6^3LL/^!R;8YN/?/YQ_SL<&#/YX.+G] M_*$GV65&,LR_3?)RJDO-L5O07TZJL'B:_F,U3C7,B M )C#%3"XT759-P\WNHLVH.)QFE?Y[XLY6)JZ@+YZAUO#+8&5?0[S,L_^<[*8CO-4M#^\+*JKKD:+V2M43=? ;*JFG:'66[Y679^$^&0\ S.6EM?FL^'L\]6TR YXWO?$S+F3Y= S+ L_S@;BR#J7T(S.BMY&LX_H].@5RB-,\@ MHIY,.^9Y>% 015,_@)%R/&4!6F9X$-%(IZ5S%-P4:XAF-U)R;TIA3*^=YOTH M=)T)'7M+-BUT2;?"XT&WSA*SQ&_Y=<93R15!E9*]J483H\&KB663G2JUE%H9 M9670W%)MK$O^"Y=12!SY6N+/7?)Q4@^D7+MYQ> :QK=)7/?(;UF7//94N>-O M^;K3TKWILS(STGC&KOM$@U"(I2[?R37."G2Y(Z>$D2KZ#! MNB-%>KS#\XMNWTN9+E7[7^Y'!TC?EHO&'FH[.:IC,Y"9/%/,5X:>.E(JP:SLIX M[6WVV ;O8+UO^O?O^3Q4IOZL'1VPB?C6FY<_+Z;+6USE7XHW9Q"$_?XF/XPV*#K8F-[0SO)K;*6N[6^EN4@LC%D?WF)R MF4^OX:.O!W#%57Z]Y-Z;YW\4LSJH&I8OE6X,K[9(K)5%%5.M MO3]H\@F\4]EB8E8Q0U:G,R4X+V%0J]O!ZYS-LY0?-NP7Y8BFH'BR/P5[SZ^YY: :CSQM-Q A MI 6)Y8H2HZVFX*8;G]):B7Y@R\'5ZYD^_5S-B*LGY%/"Q:=J1@>_P2I<+B[W MUR=X>)/AD>/KNSST+OV"7W")AU+:$G/FD@MU7,S3#C- [A4%3]-6#9]@%"01 M2R1XVH%EGD5D50B2*M:(F3Y]@OH5"2$R\M5?7'2;]N:5$> M9.1IPZY(H\_R :B[&;S^12(Y[I7W[1?3TE"\/PIU=O M049K.O#L-AUX6LQT?:\,1WH5!*M3/6?\JYV82]01R0$#XPHD3SJ M )]I1B-;ZQJP.R?F_^]GZY)%J-:F,UO0SY]Y6,ZVZ[ \34]UR%T+[[-.R?2F]Y@_\'G@"!XC"8)$Y$9399BT7"D6!$4ZKJ4I[LPYX(:T M\0L.;MA;LD='@!(W&PXJ6J8*; M3YHYGO[MT>D?N!0KF")+L!<*:Q\#9^!W,R>544)B(Z,PS/AWW\X#9^SC^:?QKX+.[\1 -KN M*I]6_8D@?LI3/^U9V:L\*SL<%5^N;VZ2+&;I("5MDIP-Q_GR]**?SRY*Y;88 ME[G%(#$P76]6WNE9D9=M=JZFD\OA;);81<;EJ>%5?EV&7Q#'G2_&5=^OL\4, M9F]VXVUF-UMQ#8:S_F21]N_2N]VZ:WFS?#B%X&ZT*+)TMR_993[]O9C?])=G MJ75ENL$\17-US-=ZZ.U3\1>V7BEURZ/M5I34SIA N16".Y>*IJ1TU$2BL,&H MW6Z%$12%3&U?$>/&(.N=XU8&8TQ$),:U=BN;!BI3MY#Z9A,R^_Z&Y!Q[HVQW M;Q107M# M^Y'=LYOG>\VV5VL%R\#I8[5^?E$01$C'V\KKY'6WMY4/2R7N.1Z2!!T7=K-M M%'X4=]664U"5RE:T2; M1MYZ*I'ED2BKF \H*NY\E &IV\JVK0M?1[,^D\=* M"MWCJ,OF1EO+DG?4"T>]T(E>:%4K4H+! Q/,\D"X"A3^&P5&2#C'M,%K'90> MT0MJ:_0"[BF">U3MA69X/L7OJRB->A.>?]=9Q@;(-(^#/P[^./A]&_S3.XOO M^40<]."/4K"]7/\=N]WN9OGOD4_\./#CP ]QX)UUY]F;WG8I?->J27$S/#ID M73 *>4Z#3D4E7AL(Y2EBQJR=H;0#[EK-;JRQI""I#_(KMNO9/G;Y(WB/X+T% M7MV4] CI,>%!Q\ ,=P0I9>"_CBH7. ]HK3/>T\#;27<(Q6D/W\&F>$C@W:<\ MA=-)JO&]2:)S/($XCN\XOIT:WTTE2D&)#B:+E-[^HGY1S\J0V(Z>40],0> M49MK'W7'VG8BJL=S^Z-6.FJE[]9*@C5:*3(>?22!.5H9J#0X M6H(I,\1I@YGS1KD8&=$IM4W35AFH\D%%0C0." RGP58RDRY5RE,EO-S3,M!4 M#YQ?74TG?PP3\=ZR%5'#YM=P_(W+RM[Q6MWH#RL6??(,[5R]J!9O,:>*B?JG M>%GU*'N@U+%ZH&+/J[!\VM?V:8\D=8\Y9BUN[NZ5Y58*I8P( MT1'0Z4B0H(T)ZZUU6L:E,3J?BJ4._'#^<:D73\;O86RGWXK1U^(W>,N+V>9. M2&@//4YCO-\)BCN4EP *XG8WA>\^Z]BGLPR,<5/-Q6W05*E (2"P$OPJ#)@$ M1$I!&$8QO B1_RSRZ>FWR>9V,E!/2=IES' \S=@L$.^IJWHR$'<3;ZWJ2>H1 MJ"- FZ!8%/EJ^W;%\]&CYVDCD#1(# M\C'B:#PC4CMFJ!,X(=$XAZ5"+_-%$Q+C9#'M#(C_+J:303Z[2/N]BF#REZ/5 MVQVKQP[2ZLD&:TA@BC6*5(;@/;,6():PYK2S,?I[S\.>CK7AU^Z,WB:QMOV0 MVF6#=PJ34I0-\8YFKPU%W8)B\/!?2QSEDJB(F: E% /2A 5D7P!%DR9^I]!X MM'S'T^GCZ?2/4TR$-'O#V%#&C I8$Z$B*"B''"@F@GE@T7KWD&+:5+P+[]E3 MXG@J_3JGTO>TY\U+F9DAC0=,"8C66,[4>9&?G0M!L=!4##'.3DXV0VGQ;SX;3L6&2+<7$^G,_\<-8? M36:+Z<,'_B%B%;Q@!E"-4;0B(DDM\5()I+12K0-_*BPWD46GA1'6.>9LH%92 MI7ADX*K\M.R#5 S,_+N?@V_G"X3?/K[[\,\0,AO>AWARFGU\9]ZORV1;8!]O MA/N$U]A)0O4V2_GL*C5$GLY23\)A:JJ6YF0Z/%N4>J_EOK-%9=7H\EU49F8,DSA:W;-]BQFH;5"!%0=Z>;>4U)"XT9,43L;Y M]/KMG5_,BC^N0'3AVD5)RYYN< WNZ"PKQJE-[2YTO^BZV=%]S>)&>DULO1B1@);L:C%4 M5XM!6(_11W.*7S2%MSK:K+L2=[@.K2;FSW(+'J(6?)9>_>FO_/816/GS8MKD M0WTIWJ3^K+^_*3]&73SM2#\]FY:J_VJE6+AOD$K,^X=,SS1',>5VW:/Z_:M&__6!ZW M8VWYO --A^-?ZX[]:].ONKS4*=7@9\,GX),.W@WSL]2F:%@\U;TV(F*, L$^ M4$X"4];S(%"DG(/YYKKE7A-)5' *,TLU]XYHPKT0".P+TF!K'G:O'WW.FGMM MG/OPM_>GJYY"F7GO,_CPT]^"S]Z=&'OR[N3T)'Q^U.-^2:+R4V;Z\:1EY+&! MF>)!!M2;::!),\*.T53$U02%L:*>(L4JW20<>MI.7' M0XHG3/W.AA15FG+IJY?INU=@XLO;6.V:A> MR.ME7[!9W:2OC![*5HFE^P_/.';.Z2(3^L6=<]2CN<_BF=UEY&NVLGG:PPYI M.__I5%^/< IL^*#QV#/C* H_0!2>UU/C$M9K5.SVH?PT'Q1+X_U:_8+NG; = M.P)\;-UW\.@/?&962-+L=M& (V5*. S!".%124M=VC(WQ,=HU^I2;WGUI7QM MF!5+]AA#/2VZK/K8K(@>2;&VF;WDJ)ZV7#VQ)J;WPCM'$;'>"QZT,A1#+!\9 M)8;3J-[I0U?\?4TY-=J1WPF$!RIA!1KS8WAO>Y3?N: M05QAD#>$.B@R9;2G$;O &:5*(F.\LO"+B!:ME_2M[;X-.PJX M1X7L4=8E!]_6FOP]L.S[C2#9D+_PZ+$(4CKK"?;]B6<:X!AV2O\^T/.:H]3#0JW,HY ME]P[*:TW+@;&J+(N8H*\$I%'3=>,XC/1V(U=I*)'\*&S'>Q.$%?F3A]X"*=H M@S7/#+7&&"HUY0Y,5(PH@B7D!#'G]5K/@_7 +"=21XDP0Q1[M58NU0&<.@KO$!<]QO<" M4-M95+U-AR.;*>/]R8MZ6,L>Y9UZX\^6ANT\D#FJQ*-*/*K$IZM$+9I0*1+*E9$&D]0I M+EK- _*4\NC8G V M.),XIXQ1014Y&V"MSW,^T(B>\\,MHL>HXRJ?S_-)__<+>&(QG85_+8;SZU0^ M]L2Z'FXEUTIJ2J,* J?"$TRM]8@0T FX7=>#;=!(4G"9(L,X"$\H7.H1C]9I M9M"#=3V//F>MKL>9CR>GYEWV^?2#^_]>6B[_A,?O9&W+YXM\6LRRX6R6:E12 MOP?M>=%N/?G?:^8MNW5WY1*B #_[X3P1A/+'EBSOZ?1;2I\+-?I44?I M96OTI/+XVBDHR!D_*R1E.#]C9^) MPJ08S\H'UEDVB;!A5NH+F\^*P<>:8^]!5\$A0XU5S&@I!).6<6FI=:"AC-5! MN!NN@E/*&^R,],P*0:-/KH*.U$<._WG057CT.6NN0NDB9!\^GIY\>/]XG>\C MKL(3'K^3KD*;6><"%"7:B! )^DOZ MH/PG_LO/;[-TH_*2J^GDZW!0*^/)546I,Y]D9T7V99J/$V4!_);N7B,@.UE@@$X-NU]H=_ M53JT?O%\!$*;UP],-[M,E4#YUWPX*FM4JY>JO:2&]*<[S,=Z01_8^UPS7?W3*N5/7;C#X6B11 [F>3C[.3G;"5KSX65126_Q!\S4<%:VU.J7'LP2(TMT MW)+$;T,01)#309%Z,)>,5V?7Y9]72.EE9XMY=2$\;U3DLWGZ1O&OQ'%5@RWI M_;+2?9J7;[QZ_+S2 ,T0Z\9>HW27Y=6#_#I]([E7U>W*EZVF(9WC?4LC2I^? MY\,IX&SZ>S&O'Y'/[GAU.P')2T_WRS%4LU.VF8:/TYQ5\[*:EE= Y-*:W@0D M:^7K@+IGX($CY3P#8Z!0 F1J6A*LY6LY!,_&9/CC:EBY A]+#H%[8?4_]:/^ MI_S:Z?558?X8SE:?+K-HRX6M]/AO186^%L;>S(K^+X/%]-MD.I@5XY_^.B_& M%7/9O5:S$S\^P#I>S4O"A)4,U=9CD!6C6?$M\2EGPTH>UXQ1K_QXB9Y*/$#J M^XO+!7@S)4W3$FVENH?[#,> V-&H;F#WM899+6@574.)V&R:>M]5]N%\^,?C M9F:^]8%[N3"P<&6P/)ZLEJBM,&\JN>^*%[ FB%IBE&2*XV@T %$JD3H= MZQ <.^!X@70<+T30YF4LV@0.#T<#02M$,+8:M"(74FB/+9&!(::-B[;=8)-H M[+U#TEO'. W:A,!%L$JC&+40#V\G\X[H\6H)K[^>RB]&#*?X"S-/P*'FBZXD^C JQ'AG_N->P_ MH.X+N ,2>]N2J#1) TV^2^#XFQ>F85^/IU>EWNNE]470)/?^]CO>1CXW--Y M];2SR71:DAC-;C9N38Y8M4MV5O3SQ6SE[(W!LE=?O5P1ZC<[:>=WS=FMT;0W MWY:FKV3'EW^9W6X(V[S2K/U.@T6Q="6GQL[;+()/FLA9%[-$&KS\8^M)E^ .+RKRX%GUK"H@_#*9#$J7>5J<%Z5? MFPY(,M[+?JW_TEO>K=_FVVLF:+;BVRMCW1;=4]=LKUN]N_XPW4B7^X@[J(+* MD \>=5G)3B.6(%I)3T! F97N?PJ[ZKCI7XL20DFFVGJK] MG0WAV/BT#I6J' M!$0['XX3+%MP_M.[4H,1N,$5>%WEA>FYE0&9%_V+\?!?BV+V\^[/L/GL,D50 M%9["Z/^=.#(OBN7( ==W#3Q;S"HU4*N']M* OJDT4\,/=S$LIOFT?W&]>1:W M3<]7)1FXW,7#^"_9A[-9,?U:1TCEE,T6_8L4E95R.*C">!"IQ3@?I)G+?U MJ8(+YR6I^*29^F)8WJ/:T@%+6&)_^5NO]EE@]+_DF?7U M%_C+'?=HENXI^1T[PG5\N_O@,[B.MY$[]TA9_$/&\C+*X@Y"R8YBP0T%:F673I]*G;IT!.[0NG!-']XQ[1JF*.HL[:=4FWVMBVJO#$0W MWQ<+1E<6[&_CR9K]7\W4;'%U!0%9-2,PZ_-JRL:3]IS43BC$L=.BCN?2EY+7 ME$S*_#K!?Y >.[G*ALE:?ANG)5U1,+HO3_(\G9A%2R4(0V-A$-A (49AS3Q.'E;),F=@F MK@8M9[30@H'22JUWF$#24<0#IYX;]N#VU://6=L,/'GO/OP6LE/SW^%S]M(M MP*<\_B5O3WYZ,1%YM7*V $^O:%81_@]DN&_&@PB?@U _SD7NG B ,RJ(2YU: M)#9(<&]+ T4=;>_O6B1)-!Y[[0")D4@5#%PJ*39."&W6N,AW4)M6(B+OC@?[8/G>_J_J\SBY]Z!1]M+U M^-%TM]M7@/B"^L(?5T*($:.)4[MQ_ASQ2CCN5%!"IQ::FH-7:[$(%(? ]-VA MQ;O);!:GDTM7>U3RGGR\M=Q.TQYME:;9 MIE+IHZ[96EU#=4,M*@)$E"$H*SRSP1HC3*UK&/=DC=.P6UW360]+U$-(]=#! M4ZR]CE/7!>A.DE\X+D4F'QT4'U0-PE9J=+!$>B%9I,@J@8TG,6T,X2@(%1RM M%2@^ X3U)M4F[7V/2]83CQH2/O4#=:3C.EAB?PU9,ZU7B3 M3H;H:8YZC*@C5]%Q2^*H18]:].5:5.&&T-)SQ'FD09- N(K&&*$CCI8XBKV5 MZL=JTY1U&E+Q#W3HAMC?+O%[[9K:1NI* ,$.7/+THC_G)S-,M.? MW^"W2%? 9TN*BUY6C$'"JDJ-52XH(64NJ.QETV*PZ*>: KC#W]Y^?IN=%R 2 M^2BE%EY-JH)BN&/YCW- 6D9Y*AE*IXLI0X[@Y6]OL[+:JBH92Z5@2;92%529 M:]HN8:JR[5H%3O?59 U2B=,T?0G>H.Y4_TJ\2+6"(HV;1Y'#,E)IL4$T((Z\ MCMP;B[24\HYF:K .::',>)"6"5;DPWF:<7>1JNA/QO#G3S A*_44_DB5]D7- M8G%3!24-)/^+^> (N5\'O>$K)20>5$+H[?K!4 ;S-H)_=%LJO_-YIR?C[#_S M\0+L12G%5>U^-)]MDN>B+(#ZLA@.2L&L"2CJPL>42%KR>H'HUG_Y,IJG9[\]'-5B3^K"M K=-3 KHH:R\O:%PTO MKR8S>/KR@>?5QLCRQ@##Q#\Q*^^6@]0 \%+^ZWPQ'9?OMWRE90G,^>H.2T50 M%?*GAZ^&G&H]^F5U8YE\6U>#W)J!-HJ+&[6,U2#*(I%ZI#!?TR(OOUKRCY3? M@-=;NQ*40$U\T)_,JK3?DAT0GEU<50E=E\7\(A4VSA9G_[OHSROZ@O;+78&Y MZU]GRRS!JB@SS71)(E$71-Z?/M]KZZR2A:B\4ZWCTC#*,5Q-YBFA&!;^KD'D M[6'L?I[V:2.G&2BE24.,D20AR1U8FZJF;9)F(BG_OWV^(6+I+TL:BE3L6IFZ ME.Q=5OW 7U>"6?<2FF6_CZOL[-6?P(0-OY:P6@GV$F&UF8S^Y*2A@8+_^*JT M-\]&>6*3.4^ID-.4!SXMON33DOVA+*K-1_V2J*.JVDVWJ00AK3@8M&MX=N)] M*NU:3;L#PTG@3'C[4G^WK /X+=7F54)5XJN%] KMUX+1F%07E&0+W,!A/[L >4XWJ/70':^3WN8_%Z-2R^EJ/*?+ M\?BU\8R+;^!B]LL"S^KK;258O@_<[S, L?8VX*;P5I\79[/B7XO:%^ MU=?24(:PU"#!U<'4ZI8W878^'*5E!0U5>A6-D])L\RVUVK>+(%J.*6;3R+QI:KU;U-TS)JSD;5+4247BP6!+O"24A(,U04,II$[VE0H4G M.AM/\BZ>%.#<="YF@#'X#$S\^J[X9CP)L#O#>LW;BY65IM#= M*-MHU5 -Y_"H_I-KJ.H3L.2)U9I_K3KH)74YX?R\**L55_8EA;*?X#5 ED?# M\E4>+\J!M<%!2:ZIT8Y@QK3 W Z+2I49& M+FF4^U"4DK]V#*S1JPU*!!2KTQ6^W:)'*7!7B' MU]6.S;%6YUBKN[ZCM;]7&LY3G$53_86I].DX@.^71[7P^O M-3ZF &TRUW\[SZ:W2N5M4X;/4<7MH8JCQ_R3_ M<(CSIO,7-\(;@I6+BF&>J&\HYMX&$87!4HG;$'_*-J"9QVIG:K42-R[>>.,5 MTFD-]!,%H!'NETA %_+_'UL2M&]KA=5>0EJVF_F1Z*EB6C 9TL9Z$*2"M*+> MH+5F?IN!])IU/D*Z6TAOYX[,UH*^RTG8;@=>-\687EG.F7-*LJ"]#Q#&6^Z= M-3&=I&ER+VWB3?3?DU+2@9U_ILM.>YSK'M?K'=8.QF,_HOZU4?^C@8T1;HP\ M]9RD7N:*J8",D8Q(7"&;:6?E/676FT-V5\$XZ3&(QY%D1VJ1??/+?S W7A=^ MV)' 8B<)+)ZY:MNO'G;YL+5,8JH3G<9%F8.]3&BJ,WV/QK]M_&6+LI"*""87 M!TFEP9I80S48?\2I1/!N G/7VI/?I...>XR)O;;M6X79 M;342>X9-U5#\21.(,XXRXQ%A2D:M?8U-(;2_AT[T)=CL[!Q,T1X3KW+.O_V6 M=0<,Z/O)N"YL.AL5?X85 UM:]49)QZC[Y\4]CD.,&ARB0#GQ2CF/ J>,&F(# MX)!$AGBT_AZJS349+H-YCTA]3[0CAUCHEU'4XL( :E @H\B*#!I M@DFC&*W1A!P+3]UN>B*:GFW1_EU,)X-\=I&631%,_K(/0#J(:+#F=&QX1ZK: MEZJ*_NALMF')&E@**Z6307KJN&/:,N0DCU@9Q(,R_IXG!A:2?[F 52JUU+DL6 MEVE1?71H?N_#UI60!L'6.,8TY41%Q@Q6@4H,"#;.1J0]D=^-X&I!3BIE*N>5J]RXBNA\&-VO 3<$0"T:Q)II"="N9TJ0"=_!6 M4?TJX-Y*HWP,;C>IBCZ4;+-O4L;0GGK(CQC8ULZ2 =_8AH"0C@%;(3C\SKW' MR/*(E+ZGD=G:SE(YI0W:7IS^LR2*?+A=*>I)T651SWY8S4,RCML*P(?QU]H^ M8LI'9U7P)(*7BZP6QM?XP]X'UQW^.MO)93W$]Z)EX$%$H"=K;+3'-CS'-CS= M*#**FS)!&803)!IKJ.+420O:RX-K[R32%!-^KR)[E&*ZLRWMGN:\1WFG ?B> MM=#9*DVX331%1PUXU(!W:4#:HD$)P7/%,-.<1PIYHZKB2@BI)[C^D?S') M_M,UH!2HAV2G/=?W3 ,>FXC=3S-]_E""738MSA-%]ZSJT'%Y!:*U[).PO"XU M8AF.L\EBNFI*,FQWE5_=N6K>DJ[[V^?L)C?UV^Q6>Z@7DI*G'@Z3<0J:/IS? M \G'.($FP\LX($AK"32J1+N=-! M0C2X+YSD_=6\+J6@U1BC.0W[4YU(\G/9B^G(.W[D'=_8PPZR8EYN$Y/5AOBF M_WEWW[5M.\;85M*$O24A/U+/'^*J'RCU_!V3X1;3Y)QGC[7U^7[9.=AMH#T> M^''U]RG)H2;?>B4+N'5[DKMP#LQT4X4GJ124.6*CUD0R33VEW'O)$:7$HC4. MY5JUUZO\NLWH\CX ,( XY8WP:L<]SD?,2RKZ1VQF&7V!>=1;[".K$T M(/ERK'=W8(!5PGN770V.Z1ZO4+AWS#EN8Z]U2(<#HT1[JGST3,-_2MHS;P13 M"ANZ1NFRQ%XUK:]I9SE6/?XZ+9.VUOSN;:1QP&#DN.DR0+V2DGOF?.3<,:RQ MK\"H%8!SC5K\^\'8E2%D%/<$W6\P[E/T6U+?'7M\W $_V<#/.ZR\0LK&Z!+] MI_:1 /RL-E8*K.^SA3=H!5_3(M(>ZI9:\)$%WEJS>%#6;R]1J)M\$$JI"#9( MC*+145EF@JQ0Z)!UL3,4=A834M(CW9K";<7A042,IY-Y/LJ>?51T;)JS0K7 M#:HET9%A19A%0082B:>,^T""9 Y;?-\>SP_)BJ>T)WFG.:&[E?*Y5>C>6CM\ M0#@F#04P05QI)+SQRE'C)1-&5SCFF%.UU@CONW'QH/PN!],S3C0;6&AFER( MP W32ED.[K.QA&I%5=H6=L1$J]%:*>E2-=;S^OH^M-8])5^EC^311SX8'_DU M(/DP3XQL42ERQY6GR.)H;+3*6\MBA4G+F(UKY/W/QN1W^<-/H8D1O*?0JWC% MZV+[H[-I[G((]\=+[BK;84?1V6JM(30V7$2)-*8<<:JI9X!.3Q46T7IT+SIO M$8)W:S&?@DZI>D1TF4JX&R \I'!E3^'7:J%A2 X&DG!%&K!M" T5/!# 0F[ M1N+T;/AU;AP)ZC%\>/ [B#"S.MCI8M_HN#?*'['>K>TFCJR,8+I3%J)R'(-I M]S6,!3=L[:CV^V'_SCZJOT.>.\X%BJ-_-;PF>T7;=DN MJ+D'M9S"_,C/^ @[V4[Z*WO@EARUT\%K)\J.W(F[J)U>A2(Q_9X6Y-4T MEY=57QS4E'#?SPOW$ /-LZCO?OHKY[=&4OZ\F"YO<95_*=Z<38O\]S?Y.3SQ MEWST+;^>P8/^?#']_F$\FE528=_ :-2!H@>(6:NZ@ MJJ22A2"PL3A$'@A1934Z#RGC@BD3W]!*B\(MBH&9?_?7V4\OIN1<1MB@W\UL M5LQGJIB%3.:HR"94(+XE54$-)+XYF*B.(6'2=!2A C M(_.>$2^UDRI%_\I%AHB*8A_H.%=[P T#)\"EYFLMJ3G'Q;QJ$5!V6:H8.XO+ MJ\DTGU[?8&\]*^;?BF)Q\A<9I M 3>>IR]>+:97DUG-]IIN6=UIEBUF\+;I6VW.T/KBM]EGF+SA.=A3>.@ZS6@B M=,W'UV57)OF763FVP9TS<&0<;8O2D7'TR#AZ9!P],H[N#>/H\Z*G?:0C_7$S M\> >UU%>'I27(Y'I*B8*,7SZ%'QV:OX[,Y\_A]//O[Q4I/;XR/=@!WY<_?TY M[/SIKR:%91 SEHU',C]9G,W/%Z/,]/MED'BD.]S>17%H+I0#+C3MM0_]J!OOX,-"+0$_9/Y.6N:)V]3&N6/QRMM MCDH4,9XP'K%3*D2.@Z*"AZBTUD'QL.H5#U JUEO M)3]LRDP23/;!93V 0';/,=:JS'$J!@+6* ;I"?$<'$U48TQ)XM8RB#:(L4Y, MGNXQ=6REL2N!XUT+31'![2%4XP:G/I@A$$2*PU_](Y3KAW@5(J M;.AL(V?YT:8LH.Y)TB4ZM\\?W2JT;JO5W#.8DH;#R4K$E(W$>D4YD0PY9&J8 M*F_,O2PQG<&T$R-*64_+8R>.78H;BU(N)^>9Z?]K,9P-RU_+G/U#]' Q:R 9 MC#5:!!X]LDP;Y)B#7Q!Q&&L7F7IXZZ8UG>5LKN:Z,Q/Y[V(Z&>2SBZ1;%2B3 MO^R#]WJ,$7<=0:+)+J!.X>ACZAP5$>?*6R9K!#D9FH9N+T=0)]9+]7"G!<[; M;Z-V.03\VWA:P-W^70RRT63V4FNU9YZE:D!(P&HI3()REG(NB1,.@463C*1S M0?EX -A,=$6@W[]^!_.]N5A/](CJ0KJRF+HD$'4C,\*4),[N) M-=)@+>H@$HF.)!AS9)5FG"1G5*J(A??Z*?LJU4RZ5%$+(/F63P>;.^F3/=4I MY>[6VKA#,F6[B2+64, 80YE"D6OMA3",12%BA:(0D!5K%##/1U$G@1Q3/=EI MSX?M-TV[',F]__ N:\M%R3CP80Y3M>'^I'OF8HH&L(*"W=/86F09\\P0Y01/ M6,4Z6B+HHX#]<%5,\\0#D3S+5S%]6) >0IT>\CUW^;?6:!X#P\-#M:*MYDLT M>*RT0-+I@!P+QM2HM@S)QP\)OPO5G9ABPC38XDZWQ3F"%Z%0;+=R]U-4KL/XZ!9!N+- 4 MJL<[;4BZM4;SD&SC;J*&-":.".T=)C@QV5D6:(S"5J@Q 86FCNF[4=--?@N@ M1K*]J"K>SLCRR$G1?7A]##:."W\X_N@-.J)W)\:>O#LY/0DOYB3:^KDX.DA[ MOHS;:;&[[AHZ_*.H-H!/QO-\_&68"%/- P%EYZO]XOV#UVM#\-@Z;[/3STB3 MHB0=9TQJRPB7@D2K F,\(FTA>(X:R_OR!%ME81^GDRN8I.N/HSS)S2#\:S&\ M2B72\.]&DBI!VE1,K02"F/J8NK2O3N-1U>RHJF%-/@BS@3A".2?.6>E.U723JDQ83Y']5C7[$Z;<2%;^-1_N:U/TAU$H&K8B&54(GOC M,.?&>>J\ 10:2QC"7#UTD-4"XGH:Y.DT'\^JAZ=IWMQ9->E)O!?;@(<4&^XG MK&2+]P1SPK4Q"BF..!42P%3!"@ FO=H@K+JA'6(]S(X5.+L2JZ\*LHX)'=\# M6-T UB2_$T5-C&4A..603:5RUA#ON8SA"=[H;M65[E[RQE8!>%LMYV$AF.,6 MO0I62 9!X(=78&@=KOMF%D M/VO;:YM;WQ).&W0;&C"+.#)LF5#4,:(H#]Y*3DE4YMY*O54+W%<@!U22]NCK MYDUO9>?;8R1[T*CE+>(6R1"R%#L:A<18,69LA5H2G6'NA:CMQB8SV1.H4^KK MG43M 03*]YKL&\U/GV2VOT, 'NA*OZ='5(\V;-_R,ZP_/:S@%&FJNW1TE@NA M1>1,48LPU1!T1&D4Y]@]PU&E M'55:4FD"-2I-61\(L9(XI!71DFH;*I6F-17NH0KS5_#6F%0])8XJ[>DJK?3K M_ESV.U]^_M2;/N Q5M/_?G$)>J:_D3;P[<;NA,$U3U=_=XZC7KN5FWTR+LOC M9C-XCVQ^463565LEP=>)A_..4KI>=IF/\R]%2C))$CX;@NS,LF\712J2SX;S M;#C++B?3 CS(WXO1-=P87G$\F:=_S,'5ORRRJ\FT8OJ<9OEHE!Z4GG['P[)O M0_A[^O+9\NV*P=LL.X7+W>02!G\-'W]9C/(I/*D:3#$K[U8^?7@QF0RJ!S_X MA/+N_61MX(_GT\EE=KZ8+V ,<&$2FVQ8AF.WGMR,_FHZ^=]%?YZ^?-?WRAS2 MR?C+I)QH>/;5*!^/TR^S^32?%U] 7?2R](KC\CVF@UF69U_ST2(OYRE?MB;K M9<.T*##Y _#8^S#:?'K=R^83^-I@T2_*4?93+6VZ>;I!L9S=VPY^FJ8)O%B6 M7Z869]4DW;=TY5C@\INK8/,9W&MQ!6\X;Z:E/*B1?YG5RU'*";Q#6NC\:SX< ME?+P5("KZ;PE\D"WNW;)+LNFZ>G]U^?S42SE^7GD*72!C",^^2TV$UR=6[W!+$\C[) MV@S'BW*=JJFO9G0RAZD!;;!$]Y)C]ZZ')%E+_QTOX/JS?#:$P2:0@K%,S:N' ME]6'20K[PVE_<3F;)[$$%(',Y>,YO-?)^=W"T)\ORG>8+4;PH#3_BZM!GB!3 M@P=>:P8B.[W.9J $A^=@I\9SF+X2CI5L-- +,N_I,2":JF^I!*^N^;J[4USL(/JOR5!::K MOG^YR/[[8WB7O9L/WO:R"YC?I#4FRT+]$G05JO(K6(T_2I3!$BVGXD6O4WEI M_^MA+PTW.VO$E7S";C-)5 MI7N0C-J\Z%^,4_"1)8\YV8!Y[726[B"HETKP3I*E 1->VHBK8IR/4C25M.ZD M/RP-QK?A_ )>=S6B2BV?%>/BO+SOM*B]J/K:X7CI.92CKCH2E#BX]RYIK*7' M.(0Y2GEG8/Z+^;>B&*]F;WEEZP9+KZ+]Y_XH'R9W[1XGJ?5BTP+@.GY[P[(G M'9Q!#\]+2\ M]19W2]=*_\RKAR:G$) Q3(-- [\$Y^7M>MQ5NSIYI4W+CZL ;0G4[T=K"YW] M(DG@2['XTU\3?_>--R]_7DR7M[B"*.K-&7AEO[\I'=E?\M&W_'H&#_KSQ?3[ MAW&/CNE"J=X\,"A=A)-Q__D>T*N]:LG5GO23 UE+ATRE_HC@(([[22I+AM(4 MH3Q?U[_:6#S$>Y=G$.]0W,N2BU+"+^TJW25FMT%Q"S6E6W4*K_VY&%4^]1N: M:"X$-A:'R ,A"G/N*0]:*JRH@L:LCA_2UT%5 M#B\%J,[!L(IL]BJL2$I\MCA+ M45L"86/KBI4A^MO;SV^S\V*0PNX;,U'%Z! /EML!LWD9SZ>/8/IA$L:WIBTK M7;=Z5DO+4EO^(N]?W+BV7,W66Z6W**-;6*OY*CJN/)-1J2_*X]#\6_7X]B.J MWTOY:0>M\+C!EW+?8^F2WXK7T[3,DTBV7J,]$;UJO/5&1S]] #('SNJ;\JH; MSDR^#'=G2<+*^'0QOYA,RSWH.C(N:NL.RH*4-RWM3?522;2G90BPW*":I"V5 M<;DE<_+I\_)=X-/ES+KK6X M!%&[')9]F5//+5E=1Z]0:T>MP26T3HL).4Z2A,)<8JY�.2O*?5IM3 S/_[N?@ MGS)0HOE5.BR8+HJ?_NH^_/;;R>EOX?WIY\R\]YG[\/[TY/VOX;T["9_7-N9O MR.?C9O )KW-@LGEK>G?B0U!AT[2)OYC.REWRY?YNVJLW'I"/9I,RQ+R]B7WK *7<(+B^9X#P#LE4Y$VL-X3I J.6#.EB MNMKRA9O4.XGPYKVLG\\NLG2V/RM-R\HE7VT\W!< 'A3V/O_MX\=W_\S,KY]" M2 IOY^%W6N\S)\DP((2#>H?A4U&Z&8/L\Z+690PRK)_V\Y..[)V9&]],42),4?_1'@^VO:IX Y*H-"\*( M?$GJX'73N>;T]V+>RP;#V1Q<]D7M@,T*<-3*?:4%3.1DGNY1^D_5]0F.@T7: M1EMNH=>/+Z,T@N 5+H;P>_I"=8N\/((?I2VYE)()3PGSSAH4-#=<6/C!L+:2*A8#N4EL\ [\SC2@CW6XU7@NG]+\Y*,/ M5W7;M6&_^.E^_Z>U$?]F5O1_&2RFW])):C'^Z:]I3B_ABQ>S>]V##N:HWM1+ MVUGPJF\S#U%'.N-=U,O?2&.>I+L\BEK,BI8HR%DUJ M=C@>7BXNTUIO_MRE7EO1D&(ZA*A$1A!%+;<,6XYT!!\/11610>R):VO*4^?_ M6H"8IHW%.XY@Y'_A^X]@3M[')Q["\!X,,_UOL\83^>LO=G+(A+@SEBFL9(J>8:VR< M"H9JP5(+1?5=RVW*@^5-KC9!K[+3C[E.>^Y+7);FX*_P/B MFR0<&=REGXX!!T6UP=9/&2#5>7HK[Z&4H])1FYR?@VVOOM9+:2_%Q239\/.\ M7^=]5AN7Z0 >5%VU+&D/K]ZFK _?JQL.)N715^D2M/&=[F M?>TM#LIMT.;%DD2DL[HFU*U>HGGRV^P?114_5O/XM0 O=U1OT19+%JKDNB1[ M!VY,Z:U_&4W.P 0V<6!YF\I!'U4)=%6F3]+9Z:@X'=8.AO6=P$\Z _FJGY@> ME%:L^@W^=C5)26"M6Y:OM[KO!")H<).K!^3]WR$(KJSVVK.:4]3)-W#0EF?< MR3,KTZJ6N8YESD1J^5JL3@E@LI=S5WW:6_MV&5M7[SR"C\HU7SGO?T#LT4A< MKQ[DS1N GU#FKV;R5<&C>W\1MHTEFBS,+@R8N)T69"L6VN_C XNG#G%'.<%39$;MP) M<4&$)C#!&'EEIOM/A8%EG-N]TNU?7C(Q83$356[J%_:3,GBQ\+J8 M6W_]\FL52A?G95[+]RQ,#>KDC&0WE^CY*F"X"8M,LRR]M_#<+$H1[%)&=R3C IM: M%]DL,*MRJ%6"ZM;$DUCQ:/:CS8Q7_K=:&&QNCB]$\!;7W\4/MTMBSC'"/K/6 M8Q&;K0G6$,$TTQ;(=#Q8H?*%=ZYM2BZ0>$GV5:2(!F_C]%9#,37^GF3IV+R$ MG:,RYLP&=5]IG946P8%FV\T(I>6A/3Z5YRO8YOD T)H?9:OV\;"6A5$@PF]F M>!MQH*]M&].#4TJ&J>]CSP\)Q\B+*(&^%'41S5G!@&SG.TU#%Q$SE-TI-%KABMJ>:KN*KQ$I-34/&*[Q<(WT9 M!K9?$]?9MGR+FF.#MJ;_'DU?77+)T=]9>"H,AOL[EF M6BV/1N51Z[(%74F7B:/Q&9Q5$Q!)9..H+C&EMK^RR*H*78;S]*K,V-*;&I&V*#<\U>I MSO+(_#4N-7T_I8:VG(V-Q88@PEAQ,&]=81HK"Y?Y3'^@440$!VX0$)]B"I#O MKI3<7?23?S6O_.7JU[PH%W^HI"C: USV(-QG2_3M":#EA8A>0S^6: >];*>H M?;KRK<9](HK1+_U(L]S_JV4'P#XK1;Y)C=?#"7DR+TZ",8\BZ0L22D")1)( MZ$$WPFZ 1!C)S4*^\HP]E,MQL*8$/8A8CX-]-O7M2KD>ED,_I^/!JS+I 0I# M-H!7V9Q7*<&!%_E$0AE2GV!!3,0 Q@)AR@.^4DCH$5Z=+\RAV)7T ) ]25ZS M,G/SN;;="K>HZ_AB]NWLT,X.W4;LB5K-6^IB!E (.844(N(1'W &F>=2&;G, M?:;8.YP%"C'K,=I9H$_(R$.43%O9LVO;UJ;==1^NR-6RJL3KA.F6+"?GQ>&A MYT((&=:X E&&7<]'O@ <@) &:UV6UIDN;!X^0W!];O; PB"GF1/ HS=HK!- MP,%>[E3ES#I%ALK*IMM^HHB=W^(LJ45>5+$=1=[)C0;A9S9M9('$YDF]>7Q; M)9L[]R;+Z[4H3]2"@Q 300.,3+ M$W]IZ.F;)J?7F'E(>0_1PY:^,H&QMDA?\EV-RII^]\JYC8>JR"ZD! %,I=C5DAA"$7B!1R5VH\U"^:)\^\-*94Q[Z.EBLCNN4UI% MPR[772BS5&UL6*;B21$4-RN9$??3[S8^S@1P.'"7 +%YAD!)_$^'A'$O,*T+ MPR@ $46^YP9<4L1%$*# 8U%0"PEC6M;A"(0<:R&H#[J2:V%(H!^!R!6('D-, MU]_M*ZKA66QJ9%XO!3LN5>QZ> M-N0 1L#W"(\ XQ1*Z05,?Z$R0H"Y/I,U0RX,0@@]$H0$25(#J;JLQ[7MWLU^JY^24TUK,.%_P$&>@@^N0'0 MA?\U2:C '5U5[31?)*I5K@.1_H\0%+O:?*'"Y'A'F"#A^3""8;@MX_VGMOR_ MW:<'Y#=!>@RA/?);\]FJ]4H<=6'N"XQ(YHP8 !E)UR4BPE0;8LC5^A"YGB ^ M\0,_6.GN]")&O,G4>Z/"(^PEX4!C#$V-^)#Y/O!U-\5( >$5W"5WO4WK=98?$&ABB\ M/5-" .9<*3'R$&<4^&% "=?ZD/M:3S)/0 \AZ&W+E:Z9_D.SIL:DG&L3D77I M74>C1!\KG%S\79_\507$=LIWD<]K#B#J,A $ KM!Z%$949=S+PQ)X ,8"<2W MUKZ'2V;B"/4$Z?1N>_2NH9D?BYYS*I^L%^G^42NGY M?N@%D#"@53$B+_/*_CJNHG34,/S#=%TIFA,<#A>S'I1[Y<]G+GF3 D_6!2R> MB*;N$K&[1.S71#.<=IG872;VBZ+S6AC%%KU2JJ_8RT.J)AYEEOBF*MCW<5Y4 M4/\C,1T51P]/#O-1FGJUK$<(Y+Q#6$0DQ9'@/I:4\E!X'I ""BZ12[V0K*0] M6EGCCH=?;5'XQW/1Q?ZR'H'4_W]RAVZG63MWMHMYO1S)%R78XZUAO")!M"A0"2*I!LQ*K!7BX)UL<=0 MH!$W#3$-H.^9AKXT='$4 #_";&.%^R>?LQ)$6PQTU@!MT5?1>V9SGBH,=7UB MQ=,%JY_SVKN,&NTJ\-8&Q^Y'.A75 ];E7*Y4['AN&?%GS4<7A?M64;ALNRA< MU$7AUK0%!5[S!3]>>U/LPZH23/:(W&U!>9(SW*.UV0UNE M_':-@V\KRXDYRU&LF4[;R"[@G"+L"2HA]D @B"N)NQIW\&R6,Z&WA^4X 'M4 M[C/3J_F,U7KMMVNX^[%I/P1JVB^"7)C&GI+[%&I++_2H)G+D0>XS+WQBTVP3 M*R;?#ZO\*!(]@GBG_%JC_/86@MM6OD,U%2@X@" *D]/%WFPESLC<>1Q% MH0@P@SZ/0@WF?8]#[&L!%P2<"I>O!"T^4YP=2HB1GC8\>@QUL3AO$(NSM,>Z MOK=Y;&DMIX(@S/A \?X5D93UAU>2RQCVKP0?]H=#LPL75S<_P [KDYNH.S): M\=6<7&W!VE_JY4/M$S7EIIF='T.M2C\'LO/'\B%>%HOQQYT:_>A->ZG MM_UD7)0F=L=#VQS3'?QKFN2)_3+H.$4(9<#+'@H6M.#7TLP\ %&P,1GGS.2OB%]^OEQ\_A MY:7C?_G%^_C9_?;QR^?+1RM45F2UT%9\*UK;5&1V2Q%-US9!O\GF 0#7ZJRO MX>#O9Q81_AB/[N.'W+#,3?;R8;Q:T_=_7(2?G(_CP?G*,C3N54VI]MP$MOF: M-XS8MH%ND>:@\4#?P;F?PZBZL M?J 8FWV'=JY5BRUX[\4PJIK>2B;ZP8-U%%4I%;VLO4E_=0^_:,*$+&M4DN/-/;14K,?)$#$?8!3#P]6$O H!3#P$"(C?R/+XYGNZIYZR6XMPI!,X4Q=2:7M_B MH;81D^W/0ZF/MK5[.WZ,.%:,,%R/'<6,.G::6+ M-3Q0K*%X,M80XJUB#>F6A4(W7;;IN@V'\#:AC4?9M:&F*IS@]4J"P+ M_UG#B@^?TH$5P1\"VZ'ISGSN*.!$*.!BF@UN3&+&A=;-VS#^<4Y+72)^>[CK M).(I+KSFC;LT7[?V3^,%/GN79:,"L)9RE=ZJ[Y%K6"< M5Z")@RZ[Q!2=$291S_G;5/75H&>=E]4WQT\F#_-#?CR.A[%SYES$R7CBW&7I MI##LBHZ>VF1*[YVK9'3K).-\$FO;Q![,;]*[CIJ:04W;29@5R;P5L6U.3\8 M2\5K60:8<2I!% @>4)=[(2. 4@]1!G'@0KB2C[MF&\AXMI.A*C:?OF7Q.+]2 M6::&2ZW BIQEY%Y\!?"?Y>W^.7/%S=6'^T>2_]-X[/Y9<(1FE>*#89-?5-'. M:.>D(-Y#9"\!*FT73IPS(K,4Q?_GUL\8Q%J.8,*29C7%[@NY$,EZ M4NPEG;DEC&^G=Q>$TG'QVR[@198.IX.)8[;X]H WV@R]W.GU-)]T+J!3@]P2 M$W@FH4!+'J"+U-2]=?Q1G&2J\P&= CF]&BX2:%[Y$HH(1IY@ 2+<1SS@F!&+ MBP EC/I[=_-@]]<_O]C-PGNI1M%V(=2Y>EHE*#I7S]LA MK*,FZ!:LHA2$24!+(%2A)3\>7K(Z&C] M)P&O]W2CQ1>03AD0 ?5<(_8L&2#2*)&01W3= @I^_ M_/9<@%3P@^6&?4$CAD6/TKUMGK59VG3.H%9)AP:BK!:,>#%S%('%S-'.0&C- M0EJDD]M@BI[S:3+4^.A2WSWO3XT[Z._)R!PT.VB_:@VAALY?];L-T]O.,=1\ M\G@]W%.K1D4D]5POC 0$A :2$XH]6B(?!90%X@]Q0G)OY$@]!%X*DZH1MZ: MN/>%=B#B/8;V4HJV)6*B"Q5J^0*^#*(CW63QQ^-%4.DJM$ M%?5&"G-'"PQW//PT[WNJC^GGE"5)QL-U!;>>+D@2J83&S#V;LJ M8??.).P:L;E8P&1>Y:0K9;*W1FKQ(WW4#E72:)5ZNA(DJQ4\^'8E2+:M%W+( MA[UI^>M75NRS%>9/5:,_0(;Y:^>3UVO--:WL^5NM.WZ#=5^=BSTEM^Z'3-[4 MG?."F>A(IDDDLVX_M9,H)U.K9,69>)J.@A.G B,'G'KIS]9T?U@V E:>L9,3 M9AW#/*/8U?.IZ>3V#4]@X-WJ-ZH1TWXEPKN?_3B_>24E>5#W\C8=7'9YY^56 M*SML;6W:V8*0PWF_-A" T!>0(<@8QAQA2@. F2<]@O1_%[S552>5*,V6=Z?> M/>;N;OUF5KFPSZ6TO?=-.0%LV8F%1H@%.=_MH9Q!X5%7X(!2Y), A[#8\1:^ ME,![3"RLV89:4S=_C; 0-6&QH>+^7&Y<:C)3>7J5C/6L)<-I/!H]?+S5\D"9 M\6\JVK^WJF 8]B0FQR!C3M%RL94F;I,\3[,'9YP^5H^[X5U=#R4,$)BG@V/ MJ/1]A@'@TI.8AIY'/8T8?,;]"+@;PU]L2QLM(::[2H37W ]_-<% YH)! MBE!@' DDN4=<2 +!-+9GG+ (A"'B&]5YH"?8C\@BR4^#_ M9IKK37(:MK#-_*OY(EO09/Y@KO@Q2YTM5O]1NG]+G3UM&/4") SPR5"F+& ""0P M\!!"/)2 >AQA-R#:H$&;'3AZH>/Q,-0_?->8?SS)W]IU<\B=K,:Z5]HN##O! MT!3!@.:>7<0$!#[V<.!K">%)ZL)2,/@!HV KCX9F3/VS^6>SR&BA/X/ '@'\ M&*3-*5HPVF 9#$RIW]S)U$!ITNR/NE#6!=%0BWTA&/M,(H_3B-"(AY$4D1$- M+/0)HMC;C!FF6:;9OJC*]'4VV4>-')KG=VP4;S(S @H.]D LME'NS^?K%JIW2&F/[#5-I7DRX:A]$A_'WS5UIMG#CC*A MG:POYJQ/@, R1-(% <8!9YKEA6%]X7'N,KHY#V4VB\>LK1NKE$])][:2SRA M\U*?%$E$**0^D)C[P@<\*OD,"13X6ZC83=S70IU*).DQ=A3IY:=I,U]DZBY. MAJ9HL!KG*K?E4-.)GCLGMC"PP]]UX8#FPL$'$> X\+FVF(7KAI"$R @'UX4N M<&GX? NZ7(.P6 +-KE_,_!?'CEE)-P\^-XKUFZK6CXRER;P&# I<(J+(%3YS MA3:V@2]PR=*41ZZWJTF]R.CQ4XS>0CS 18]A>-0RXJA-[(LLO=.#>; P0&GZ MN#,%34[2#F!SN< "3U,( 2ACX'G!8Q)+1>PSZDK0[XY0Z*:THM1/#8-"L)J M5M]:M2^Q+NT!O,](WL8J\5/2U>UD/3&OOQ0@%V&$I<'76C4C$")>L!Z#-&#; MF. O8<@6JF#(3*K37IHUOC4GGZ9)_BV+A\J2=0?4:U*!@;E4""4$KB^"2 8! M9U)&4GK4!+N1R,78VZR0[?Q^UL<;IH 1-?DT1XV=&\7'3=791\:V9^6?^VH;>>J/9US%T\TQ:RMC'_T MV)WA.;M[/O4C[H?:8 X"*3Q-WU*S.W$Q#:$?XHU:NIK-BW(R&Z:L*>H!<13[ M7IVYW':6H_.(;P]B#P:8$N*1"&L5*+ H6(YAS8#;!(4]@Q%/7=$V7Y\>E8'L M3W/]*BIS,E64[=+2_:[;J%Z0"7PN$P0+&?%\%""?@- -J3:8M4Q PO<#(MD3 M3;O+N?Y:G^JWUL6G!9H;Q=M-U=Q'QKYR7I8F<'GH>Q"$, (X]# ,.2[8UY/8 M<[_A@_I^GP/AF-3A')IP"GS$4>K/BQ-/\[#J.[WZLYFV)C3\6NOEMC&1">E0<15^0SDAN M.VMA-@_SDB"(B$!$>%$0^3#B/BM9RZ.2OX2U1,5:+5&/E+.>GHMC8,G3M'UG M.)#C;7F9S.F1R'B$41"3T7R !+'VH3V# Y#;'K>1(^)SS[4Q+WDY'^ M1>75O'<-?!JH?3L+N(VL_'XS+_-YWRW7DXBS((""^8BXGAM27O R CQT^?9Q MV:L'GAU,SG;\4:5N#03950V2 Q$%DOB8!C@*/2_$1&P.)W.+^:Y)$KL.1XT0FMH/I#/3 MV\^UFV&!@'-8 "(>N8!+[,D0N10+R/R";7W.(8BQ /7B_R(^1X60>02$W@4" ]Y MOHPV0RB; 5L%&L7CNOS5QZ:W:OA9-2U?KFLIU+EM.GG:R=,]RE,VSW""08@$ M#XC@2/JA[P=,VD#.0&+!@G";4@1;2]D60MUFM29JIGBVN/?#Q'@[J]^?2](; M[EQ,]V=-35DR6!C:2*_Z6=7#!8$_+3,H9$N"#NCOM?GXKVD^2:X>BI\T::FQ MEHWD[B6]8-:.HURKV7)\'$_B\75B5K8H@>3$569',G:T.>C4 $5QK*!>YR;^ MKJ]QBC8J^G3]-8NOE3/-U=5TY(R2*V5ZC]7HW/FF MS[VNWD=#BE0__2[3KV1B*NR-*O96MW>C]$$IY_=Q>C]2PVO+.^:4[W&6I-/< M6=5\AO"2\30ND(;]N5"1U=*]?/UJZS70+ZFR75?GW<]4+KVY_7N35;>XT^QT MUM>S_/M9?*6?^&,\NH\?UL\ MJJ[5ZF2VS!1+7&-5R#?]VI=JI"QB/PNT#>1K-0%=8FP@1 D/J =\$P@/ 7?/ MT+N#B,4]2\';./M=JZW>HF":"Y?^0R']2K&35])F)I#ZI=VD]#V6I)^IWCDP M%)0_C%5VK8TO+=;RZ4A/Z[5SE:6W\SN50G=['GDKK;+6W&C!>R_300U@:*"2 M:[63C 2]RI23S,QHRV7%;^/!:#HL$&FNJ4(/L*=5IJ:$ M\JQX>*MQE*8ZS6+?U:S6:_MH8'DNO]7Y8Y#>ZGL9VK>S,JA+5HLDTFGF7,U$ M;#X3L4YJS;K$)!3FAI',)-7M.G./_-P)IJK"*)/DUK!6R:(3T]FY\"_T"DZ[ MOL[4M;Y*W_&[&NOK;%G=.]L)6E^G5RR]5<[[49KG/U1W>E>-\L%]GKQS.QSJ'LRLQ:XR-GURPNHEZEQCQ;D M_][H$I6P5O1)(,X%$$"*"-$( DJ1MB&]@"$?^!Y=ZQ)=YV2\R-+(6'0?QX5A MIW_[6A#CEZO2\%27FA!5[:) SX4[F$SCY2R /9B7.^>\0=SCX,FGT?*+3I.)X.DT6YF\P'ZLR<#T9M%*!= MX_L"TIGK+;S7:.K6RNY9F?ZB]($Y7@"2^#;-)LE_QY4/))EYRW+G;IH-;N)< M#:W=D%RM& /.<)I5S[(.+$>-#9Y<\>9_F#G]GK#9GC-KNTPZVA4Y5D9KL8=; M6:X-$Y7[] QKD#4HS0R]8G^)]=IE#XX>=[/>=%'4_#B38BO.M>=Z#YY%2J_B M/:@]9&%_?W:#TE RW^MO,3:R8K3P3 B*^ :[>><,M,U7'K7*PGS7TS:HOJ]9 MBV_)K18,G]6]\S6]C5>B(>Z3X>3F1PG/!68<$R:QX)RR/U4[F7K51O%=KGZL M/ORTO&_Y;A92-PM8%>\>#[@K'LCAGWZJ3EH^MND0VNZR0S[L31,-WBHDF;]F MYO"*-UR\S*$@UGLSO]VKD;9]?M%';G(G-'JP:7DD35W>5XTX/]#RUYW9W;H7 MZX[?8-U7YV*[()H#D8G=YGC_:X7MUX65=Q1RZA0BGJ"09B8>[#D&M/2LO1*# M'$L0[+'&N")0:V,K&).,0BJU/<80AUQX0'\,B Q R*/U,:Z;'$@EK3T>@%:& M%\VC6%\Q70"#'@6\!\6KI&,W,^2T48*N21D!G:P[0ED':ZV$0Q1XS.>NJ83N MFRC( ,)"UOD!8.+EFU>/RSKQ EEWL%T)"&$/$-&CK]/1I)GBKE'5)G:D]\]J M4F[.OY)X:YR@:DA^_&:14VM0C!F&(9(D"#F0F&E0Y7I&Y @2$=,GZ<4B1Y/ M1TL!9K.TH2"K)X46//@H*MR=@ >ADQJ-D!JU1.Y02NXC#X:0QRXV")?2OI#6V,%[W+TH(2:J$99=R%,TR=<3HQ M 1-W:38QL15]$UX[U(MK(^+*2,WJ]/N;9'#CW*?3T;#(O>HK-7;2_D0K-S6T MF^Y+H1;%&292=:1LAM8LS+NOKI/QN!94JN)LE*A_718!8J8_?O,G%.] MQ.0FGCBW\8-YU=FCRT3%J^EDFBF3Q39+D+$!J@_52,O082<>F^O'ZBJIW[%X MQ-H X+J4>U[\BEWAN+2PKP )['(F(4@Y\GT+L!OI40;C/ NBR MC1%"3SYG)2SK\E?O,OS;K^'G;T[XF_Y[>?Y8>--S0TN>\PZ[#.% D2F'%;(U MPDTF^L&#=9LCE9(WDK"J6)#7Q:)).[.A:&=J/'3.]A.D]&6\A]L\:WS[>=]( M]3,3I54PKPU10V _\6!&)OLV7^)A'AYH?\UOXJR(^M8 3I.*XVLZR53/B8T& M^FX2'TJ.V5IR+DSIIQ1JQ-58LMQKF>F:"VB[Y?>.7U[>ZV43%A%IN)1 MS_G;5/75H.?X\3@>QE9%36Z2O*YC>@NO.*@*^FMJ@6DOE%<\Y M]\GDQAG$^8UY9]\-7HVZV=Q1!+46=B5"V!?8C:00@B"A:=T+?2"BU7X(%_&# M31KYEI:4Z\TR$_^4%%<6E-K6'M0!VKN*!258?3=6K$U>M#C_2 M0I,)Z/H,,P 9!E&HB2M"W W=P-MJHXDTW.DK8Z9 M#6GH?R9&[S1^5]K@SJU5^Z FA:%M4BY&^I[#,E$Z4U;N:X RO;I*!HF!+Y/D MUEC?DWMS@;GI8)3F-3M\]HQ**60:P9OO]KB6Y>Y8FP@CYZLR/H/G&+%O,/=[ M,&;0;L8,?A6SXN$LG4[,RMPFVFQ.)@:I%BAK?T9$T\%];P.ZS]2M1NN&NE]+ M%8@YSO YX=Q#IAV+("Z(&.!,JP+I>SSD"(AFH&A31>339-@D]+P:,;1?\+S* M+)J#;#45,Q$%/>5Z?,DP,4E#I6"L**R>O&T/_#JV3M6_ZI^&Z6T!@I!*T+B>2 *-!2FFCY]#+D7>B%XC#YK91=-.9=D MJ K;X)LI"W"E3,X5W!6]'(@JK_MWVW79?!9F6=5^NZWF'K08MF!H^;U6:VS- M',U$QE=70J+^<'!%I%1BV)>DKV)%U$!C/GFZCN:/$W7KR'/'OXG'U\8T&5N( M%"1YK*WALJZ M4S*UCIQ66NC_&HDAKE@7O5(7VK E[9\6H]7/^LY6D7=,ZKR M(0X)!ZZ6+3ZE,I#2=5TA-9$R0B-(3IVJW'-3&6N2I:/*YTJ>L">N@Y?06_^B+<#8UM/[.'YLSS[*EK MUPR\^_GOJMAFU3@A[H^2_,88=GJ(!M.:C4\G=O*'W!"0GH_A?#X&]?FXF\U' ML6499V:_,M?C*/PJ^OAWK<(=4V4P'<=EY<^IUN4:M]@KZNG[F2J]TL5>%B^3?DB M)5JS]F^QQYP[)O4ZN4KF.\C9U%00,->:,<]VJ\W[%_:PGH]\.KA9F!3K:AU, M;Z=%.2MSXB"]O=6H8U#5MS)SJ)>\, <\6\2=:5G0<^(W1_^8JQU ME3GOC2<6@9_\\(O]!'_ZP=Z].'^N2%;.CV;G%]-XI^=((U']-CWS-L:S<&]G M8O1@X5!>%J:\CC/[4K-EGE/5FO)9C:SVR,"22^*PU1Z?',86Z57K U(>F_6V M2;5?:FPP$Q!WL0DI2NYFXMVR1?BE(/?H2\\ZNU2A 4KC7EU=%843[-9JR:F% M:*M7V9K?[QDB\KU^RE!=54$E7ZTX@#@^@_2]*I@/TF'YK7SD@FRJA;B8K=S* MJ5;$M Q,N*$I;?A0F(.%?%J(7_"L[\)L)!HIHV8JK[<\(Z5JB/59>C!E1;Q" MPK_X#7K/G1Y;#6LV[WM4'_I]IA925PK$7GJOK"(Q$4#:'K]-)H[94\I69OUP M^D +_MENV+)N.)!"L+Z&.N4?3H"W2W2L@80U6\PZQL9:&99HT#&47M.1A;]: M#Z#ELV#W!HQCW_P9I\Y@/@6&II)J&@;U:9C78LJJ:2A(=U8DIU82:13G$WV% M\8PX_YIJP6PY3I]L)4Y5EU$37FP%@>$SS: &5\Z$P(,S2GXWM*EI=>6"WLM> M=(-9B3%U$2?4EYS3()"NYW)$?0)##@@GXM3-2N_<*9JDUDJ-M9[\/Z<3(P]- M,*76-ANH@X:1*;9/*&64AI)X%(8H$LPC@ 18@D-1QWZ0[/9K?Z%9UOGX\>/C M,Z/BOAKVH8 *($)B)63,, 9 RJL!A_S4G7P0G#N!#7U)L[Q7L\NL2DY-L+2I MZ/IG([&,N&J_^\YL6:S%:15.M/.B_\W5Q* ?C=KG2.Q&Q>;]R/M?,4*^T M1ZMSYM.[=&#%",ZK$\SDER>M"+6RYV_I4GAPOMR/]94WR9V-!%&9]99X-N"[ M,)CM<7O+N3E2/:B$?DO!4 4\-QL9Q:>++/WC85ZXOD2T:_P>)=;4R^\,M:%9 M!'LN)@GMM'8'+.W7LS.4V)+=U:(.'0,_](#Z)F#^2G_6R[M!"D,\0%?BJM_7 M4IBH(>P/(<(H'@S[6G'W%3MU60//:P+&T)P:Y\>AJ/"E)%TSB.K8PJ25LM((B2??=.7FG6S< MIVS$H(_4\ H/AT(0H)!4HB_A\(J!O@)#<<)9/85L1.?.;BK=?OU:MIFXG&B^ MO=$/U;3^2ZS9.6O_%M%>@=MA8=4S\%NH7UX_9D'$78SB\?*IG23:MR12%%#" M.9-42@('5U(*-&!4*6T.QHJ?/$K#YS-ZM^+$N%LU'^0+ N;;O"]*WBN#0TH% M_'&60'3JUN*C &T&LBJPT:N.?U7?$W7?="]5$\1(1++ B*)1,27,60],7! MPUV:+J'(N7.1Z?G51LBH'G(6J7+3ZE)EWY/!VHBB]1O*]5=>+J"^1:KN(?;Z M8;?7?U*:PA+S19S8+5375+-8;_A>I*-D\&"#+\U)-0/^(E-GE1XQ:J,X;B[] MG([/BF\5IQ@M8-Z]>E]54^,3K2JNDWQB=],OIGW]O 6N2[+;5>5A-G'37#^X M4FQ+.DR_6)J,)U8/Z*];/:W3.GO0.DWGL[528R&,FS \[&,V%!23F,0Q)OI? M!(9]Q <<\^/>^_KM\8D)!,< ",A"UZ,AA:[$+D:,\(BZP.?NF\,(TW'[3/]F M<@Q^+.)7]M/%=@=L08V/^B;IFVHYBR'L MLJ@9K\]I'!O$.G;B??E?U@G,6RFM, MK@;Q-%=%@;?81L--9A9&SWZ;QPE9GU&1$ER:($L!FZGQ2=\G^;R_=,>>AV1/ MW#[VK##0*7"BL=Q5A?E*1NPK$W5L.*TP%#5'74VS<9F8E-L@_O5E(JH T:56-LGKZX4VUU7FL/>1)]-Z,1H;TG$)MZA-CYVCCAN[6R%"^ M>URNE _E"N'[F842K3F?;26:3@JT?T4#E0^RY&XU M.+9;SC8NIVF7T*UC^]>Q%+3=4K9_*:-D9/:3 XT<6H(5MMP^Q>?+H2,=O;[) MNL4+I]8V(&W4A'&GU%U34;2X/UIZJ'YZY]QDIK[;S61R]^.'#_?W]^?ZM//K M]/L'-QO<)-]5_D$-K^/LPS">Q!\@9QQ1\4'?$3(DD !0 H"Y9!],]3GC%X:@ MO#>&YS>3VY=3F&LF>%04YYX#\EHQUS)"H[<<=?%9?8^'L0E\S]2DK#]HMP-, M.,N7P20U[=HA,8$2H.9$C3M*;I4$@N ,(J\30BU 9]36;I. ML;1SW4X'^)"./INP;F\.?(J/!OAHZ,,^Q(;VQ=GO_R+]A]%]?#O4C^A/KK;< MURI;,A2%3_*)#3+S'D;Q?;X";^:5PHN:Y)\U85@'#A1%GF^'8QI#M"\D W'V MUT[8M'#=NKVK=JX;A!^@. $00\[AOW4$VH2%VR^*L1A$&[^_EP?(EF$UM1A@ MZQV9-Y$JP4=1*"6+QY,.7'3CZ\;7C:\;WW['=T1H X(.#C=CX=[<9S+?+.*8 M@MIF48S*NT.P)6:I.ET[GU)]G5MU"^XYPZ(]6%X4HKN>YA.'6L<([SE]-;DW MU2YL7_)O:G SUL._-D#'U!P]MVW!^FF6I?=!XDHZ3 MU)XY,DZ;K$-$C:'WK;:-/KB=L&KEXG5:II4+!^@'#$[ Z:()M(OI:L3"M0(& M;1LT7/1K3<8:SIC^J8\ H5_BAQ(%B9YSFPZ3JX>D:EH MCH%U.D1U2HO7*:Q6+MS3B*HJHO=$)?QF]!]8)L)AUW^@*[;7%=O;^K(7%=MK MC=#3VJJ+'&W$PK7"O-HV*R%3IGE)I$7:R'31^Z1,B\/*MKI4=Y,R]@Y6QE7_ MP5HY\6VJ[2MK%OGQV"0@K+.'S/&>26NF4&A$EO2/I3FP*QO/5M-L_+)JIB&>'44C.+AM!F/_XF3IQ_F/WU M;_9/5G0W]U,-?#Y-AAW2:0Q)=TCGE!:O4R2M7+@3\MVP?^\HM DKUR"HL[[* M%@1L.Z!S.4D'OSM?BES/BU&\7#ZK R>-(<*MP$DG/UJY=.>L6[@6+MRI5,&" MI$NV:<;"-0B9+&PK;5MZPD^'MM[G+/G 3\?#Z6!BG2GAY"89Y!TD:0SU=?Z2 M$UJ\3N:W<^%.96<(P:ZL54-6[K!EK1#<$EQ<3OMY,DSBK%;*JO-S=./KQM>- MKQO?0<9W1/@"=_BB*2MW6'R!M\477Z! .BP_S]N9E$4U M_9M$73GA'VHPM<6[OUSIHUTB3S>^;GS=^+KQ=3AD$PY!'0YIQ,H=&H=L603J MY3@D2L;Q>*!OUN&0;GS=^+KQ=>/K<,A3. 2=PW_K@$@CEN[ 0 1MN^%B.I-I MG $Q!8O0(^]\(!W?=./KQM>-K\,>6V$/U&&/9BS=H;''EDZ09V&/SN_1C:\; M7S>^;GP=]GBN8H&@"P-IY<)]'!LPXOS#^_K)"=+!U);TN%03YRK-;"SH0&.# M=)0453ZN9M# %C*3/5O6$ISH\/;NA MTPO5S+\Y43+2*D*/2=TGDYO%UV_""^HWG&;C)+]I\EO^^R_Q6*MEJT5-&JD: MY_$DU<9\44 #HJS_K$9ZOH>TF=A%< M[M,R?'D7P8IE(Q)A7W#B"4(]0*6'PM!GS _](/ 87&;9$VT_N)^5VY[O+C_^ M^;/[[=>OX67K^>QBFN736&N926IMNDS]:YIDI2_9M$V>;74;K0/I^^$/57D# M?6BJ@8LI>!#^,2B:0[N#B3D,)2:]\G[7IMZU><)-G#O#Z>C!&<337"M?:V]F MA:&IG]Y73JY'K@_HQR7ZZ7UU$X^N3!5LE87V5O&$\G-VFF MQSA<%1D-T :UMWCRZF;TQ)3GF K)2?F7[=83D[Q[W ]6/) ]WE,2BPU-,3<< M@B]I17DDAL%;C&_OCJI&C:Y;O1>NWKS-I//^ZTSV_["54[Q;U^:L:Z-&UZW> MOE:O8\*C6,:C&)WW\.,60RN!:87B[_YP;)R-4YDXK1CZA_R#X\59]N!\/7?^ MGJ;#CE5;3LR-&EVW>B\511TO'M%J-FITW>J].-EFG*29\ULR4,Y%IO+$^,IL MF.LC>39-X]>]ST@03]0V4*D5@_LES@8W!45#9AHA(M"0H7:<^\*E?._._/(5 M;UJ^O<@2S;!WFF/GO&M^=P>#=#J>Z'>L3G_4;[1C],,VNR][V.E]Z>;+AEV6 MWL+VB=E:Z9L>H>4.2E]I.JUV3J[2D?YF9O5.9;G-41Q7FROE0VJ[-&8AROB^ M06SV$NRC]1R8#,>R*7M:'#?)#+5#A]][.8:M%78.*1:$E7]WW%JA3VZMH W[ M)^CQ0V3#,;SACK0AVRX'V.?_'-^J(KU&WS6>3#/5$,%]0HII7VOY+9F,NN5K M[?(9!+P+S#\"IV$M>B69Z-L.2C?BUP=]DT_GSD5\=Z($GJ7WA7)$[]Z4V/<# MHOV;.-%89=8\U4OC;-A;LH0#C1H'$VTEOY]CZY7:5^O ] F0PS'(.VL4.QOL MX:9@K?W0?"?#NO&U>'P=#'EZ-_/8:>#H<,B+W?!U++*-G^\$**2#)JUC@TZN M=>-K\_@Z;/+!^4MZ,W;<<]/_.Y_$1A&=J)5Q7 BECAQ.D@PY/'-5:=GBB=03;2:%N?&T?7XPG13JQM?V\75H0J.)./O="<\= M=QC?YB=( QV2.*JU[)!$ZPBVDT#=^-H\OK?*.-U'O<]WCQ1)?JPT:_V&RPF- M[UX^XD.4VR5KJLW^C^I+/QT^_/P__^/#S>1V]//_!U!+ P04 " #C1'!0 M9-JU1,H5 !:_P $0 'AP96PM,C Q.3$R,S$N>'-D[5UK<^(XNOX^OT(G M6W6JMVI) DGW=/I,SQ80TDLM 09(]\RG+6$+T&DC,[*2I9_^_KJVP#.B#K;)YXOFY?4%0,2P34R6GR^>IHWVM-OO M7_S]YQ]^^I]&X]?.9 #N;<-=(\) ER+(D E>,%N!;R9ROH,%M=?@FTV_XV?8 M:'A$0/YX=;+J^1POH6NSSA4M^=Z&%%QB97 4+"1$[ M!6*O&:1+Q(9PC9P---#GBQ5CFT]75R\O+Y>O&V1=&O;ZJG7=O&NV;IH7@)M( MG$\6)M]W2\ZI=6G3)2]Y?7,E7L^A@X+BQ";$7:L)3$:OV':#KGBA!B^%*#9" MNFRB70)1P&0A35RK]U?>RWA1K+$!$X=!8H0VO"9L?KF1I9MW=W=7\FU8E+LM MGQ\YDBJ67('FU:^/@ZD$^>+G'P"0H./UQJ8,D 18"^C,):5#64,XQI&B&M?- MAA#F59:!;4 FJV;(_.50=:EME\%'J(WD=JE#)"J-4J'2=T;7 %'62).*O1D#7$(\:S=9A M6D1]63$M KIC:'%W!:DAH.:P&:R!7C<6))#9=/O _\ZGF47I#I=>Q$2H>"=4 M;'XX0$7)F:"E&,?RJQ2G.JH>!=P24!PL7SV6Y5$C3CGT"(^H33E-RJNA'G=S MMI^ 0 A^7TRD@XS+I?U\9=@N870K>J8?=5V:HR,,_FA$7$IJXU+*X\!M9@^; M5"=.&?Y5IG?=86LB7%R7@$C\.%@#]&JLBJL04LE?!RM!(#:?@=%$@)V!W,Y.' 2P[6D$8-(R8"#Z"X_7SC2I=P\&_7:G/^C/^KWI3U?[ M#/=$N0XR1^1G^7O?>3ZQ7T1#N-?:<]/M-B@EF?\PP.9 Q,3\@.E::+3(++V] M1PQBZV@@EQ&MJQ>WK?>WUZVR]8(7#10"]@($*@%?)P")"7RM0*@6>.'*VF^-QTX-^TWM]<-TN#_\X342<8.ZZ#"7*8R*5R068DD[; M7]\V%?UUYVG:'_:F4] =/7;ZP_:L/QK6J7-6N;%M_.YB1TH8N]18\:%ZS/-G M5*#C+<-6VZG>-F^O;W*!)]I;) D$HH"454@6&ZAG_S<,OACK;WQ"D/6(> M"'@A&9GH)X;4-/0#L2 N%P2"P7P+A.@&EWVN#;YWAI!2_NOYT":>X).)ZFU> M5$/69]!\9X^I+99"X00YKL6< Z%+X98)X/N\ '(!0$H OH@SD+[K\T>I&FIM M5'K;5$2E:J!J&()VX08S:$V9;7S/@\).>?T4P4=%R-EMC_NS]@!,9Z/N/VOJ MYC(#CI9>GY%_O$U6_QT8:C_ \!YEC9G87N/PW+=K$X;)$A$CYVR:CES;0F[N M5"UD]/C8GSWV1,HL4N7N:#CK#[_TAMUZS9QIO%JJ 15@IVU/-W>J]J0#[=R^ M^$AM6]@4NP,ZT!*[.J8KA%A.X-*(-3#Q=L7_$VUKRITF=\X)E&*L@,\+>,S. M:(CI/\JM6B&&N9X'0;/+*1.G9GZ9U8S;Y9)2Y5TVORS>:=8#A+>KGV:*7P9;6@1?SU" MYE*Y?:$@)%EL,A%*+.WX",7WMPC6(.)]QFPQM!D*=J&41DS%)!.OQ/*Z B_) M.-R,5%>T\B_8Q$IK%VB:=XH%&NG_&J[']-8;R]XBU$&$LV5C"Y(\OE:1Z5=G M6HI!N_AXV^C6;EF*.60E.[0?]!XCI M5VBYZ!%!X2B9+.4!24VH7Z_Y4=%F'MK]"?C:'CSUP&.O/7V:].0R0(T@^&+; MY@NV+=,)I=+J8Z$;12P4>+[VG4W@TRC8 M#)Z4 ":=229"B?POAE \8@T8UQJL_ 'K'H4^:+U1!*TA##4,7+W)R1E\S>?K M>'']H*O:1M0?=D>//3!K_UJK/1$QIXEY>YMX4\WW:($H16;XNNTXB#FQKS<* M=$\'R]#OGOAX>_U!AZ:K,DGF!_]AMPT<"3#=[%I/^UEGU<"ECAXS&U MG[$XR,A/10ZO!YFL,^%/;)K5PL]6*(Y\*!6\\^76'GCO9PP!Z\/HL8^#>@8P^!E6[WN\X-T>(H4^/"K,,Q/2Q#2V&E(I)]8V(TEU MQ[9,YJ8CST0LD;SM(5;O!"[FVOQI09)(FQG]V?1O8-BKT^JTPHWE.J9L-MH.ZOI6 MV4&IT#EW54EG1S-&#R[CSFNO;9^RP.@_I8TC-K MB"+H2*DA\;DN3RD0UPKX:LG74K&&U Q$JH6IY+F&[6+\1]6=TK5"D5WDJ!5G MI%.0+A+^I!%KPZ#K6V48I,2LE@'1,U?>ICF_,8L7UR^=?5 &0%][P]EH4J\O MR&(^B_<_WL,B)RGE8Z1?M?F@[,%"6!+=EL^\IMU5Z.\BW=0^D7[]YH.R>XH MJ6&?-$#0R>=LOZ2V)[J]5O1$@UY[6JM.R/-4F6PKA5+;S?!(*9E@>3ZO?4+E M^3/JP.-?+/;)0IS.(21-D"4^O9C97OG"@)45D(EK8O@(<8V/'#N?2X*86.#+ M!H#0H7.]2A"--K'/UKL(E9N&?X@ M_IEU([$&JZP;L6\3^%][L(.8W',-*(A0EQO0^J.K@2?D7!?>H"Y\0WBYXH-M M^YG[:8DF: VY,!^I&:+K-C&%S\6QJQ,^*L?&Z0/ZB"-(S:PMBG?+:?)?G!NAJGNV#OT?T3ZQ2O1^-24$!\",7BI0Z'MH"03- 3";8>]/AX%PC_&Y#B MY<@6*G"N%!%>^8T- MGWKU M)NI((\T$)Y%Y1^#4.Z+P/>K_TW,8YCDAZFR_('M)X6:%C39%L#A$.1EF I=( M@B/@@C84R "=+8BD "&FSI!&\=J,0N) 0[!WOF&VPD0>GNN7"(S M=VAU74J]RV&.!7D)D9F5(C&YFUTI0C5 3 ^Y7!5I B)5SE5G'\>CI="Y4NG6 M=;.5G-;(@OE=P/N,6N#L(ZQ 'R8@LS'_6+PQGU>=BU8"[WP2T?%^$PLLI. < M\R'L,P/V$KUY)%)B'PD]@[^/CIB&(LS:MDU[([9(1@6H3?A/PSL ]EB5H:"X MS,J16''*KAR!"L#7 41*@%TMSK4E"9^#(#568L,L>D:6?=3!0L\]LRX4C@=$ M7? D>EMN(YEGY/>QF:*E<,P$;<0Y$F1Y+,S3^&;&!25:OB\+A,+.,._#D7\- M,@\;_IP9PM=PQ5+<*C?:R*7S7,#$RVO7(V]4AT)Y5Q^/QO+F[YJZ MN[N57<:K #0^TW/DW=N8-^=[D!O>>\%QDD:+1MX5:U3W/ZU)GV M?GGJ\T%^^XKU2:R>&C;Q:WJMH\$)'5J&S]=O3KF)[C98+*PQ2/_ M 2&VI[U\)AXAR[LW$S0%9@]*]VZ[KYL6W\[O(\6?99CV@] M1_0"$+A&GR_27V-+?NT<,'0XQ PS5Q3Z0FUWP_G/J84_88;6%X!QW3]?$)L0 M=_W)M,7';GW^0IAT ;R"&T2Q;$\X"QYV7([:*H9*[>'G+UC;A/3;=[MLV]X[K M^'QA4&1B=D23^4_.<@P90U0$U&FV)LK]@4:::'Y,&^5R=6 !)''$^#MWC4SY M26>*Y7FIJ^:/_$WV%:?C[KW+9YO)/IEX+:Z(MF5'\ZUMHDI MNUOO7:H7"C XG:H0-RK:-YO/";OE3\WF>.?K[QSV0]8,X[6$I]0@'&:O$96' M=(D\9(4W&MS5A4\&='$SK'? E>43JPU5E*L:&KQ]LU0@5?%P M(UF:[O$")U,'XVEQFF%[92I7]U*-2]V.DF:ICN!D(.71D(F&W+XT*^,%JFV5 MV$,2&]H&B#_TOH.;H5?6L6SC^XZ1^P@,W19QHZKH,)UY=;H,M@LHN] M?3)3QL;=82%/P;W5"UKO?RW[!_JWF(3_&L>J^]U#F;QE9US($T-Q?+&X M DLTJB+6[Q.>=H4(3\S)[X"(I/JF=^WU'!-97C7$ZJ?0#V5R^NY13[>7IJYL M=)K3HD)3\T?F>>*^$]/9_+'X1S'Y?2"/4_=-QF3YP5Q.O2/2S(M#Y<3Z\=F> M>A7+F(0_F,M_AW^2\^Y[)50S.B59CD4E5X?X" ]-V"?&91=:2][B=G?4IK^N MWI9:CLK&98B&??#8LL6$SYY%6:7>?ODG.-!4G&\:A*9!!+_E6%!Q*\D#M==B M_D$F/YLHX2Q+7-T!/;#H1671@TT17OIYCK&5LPV[T6YY\NJZ1,3F?<+;@2N> M=VT>GT+QA?.<31%]Q@82C^0=18+7!'ES>OXE=(%C#F52WCT;WC/J6@GF6D$1 M0Y5RP3^C&#@>20<1 MM,"LO193LZ&Q1V=;W8 FCZT3Q%Q*9G9X*E/4RQ5W7!YFE7-7:H/YQ[33[4#R MW4O7=MM,RKNW;S9!,G*/O'_[)/7&U<"68B0G,_TT@'2)'!9D)[OXI;U\>P#% M"<8\8N#&OH'UF)?3>\P%IY;\)0XVT(UT=O9F=KI/&+3M% / M.JR]H-C8&S52W[Y]MS/DPSAT5C8=\Y;C_[&W;LG#HB4?_\,\R>>N93O1[ISTU^4MPH2A):)'KWUR3TMT<=<$+3F'W2JH+_+V]5#J M%ZX-/V!+W/\M_NGP#L'D@:7I&LSARD2[>HN15"QQ3\5RS+W)')F9#9BY"V+* MN[=';PRW\G!.WN[WUV\BW75%*I<=J$S+MV:K,#@W8>785?&0AFN)> M7=44J-YRUZZVLIWQ1PS)4^9%GZ(S3E>\ZJ9^P\2T7[(L5)2JI&$,O4:+K F# MU&^K9\@O+IHC0R@YMD7(T+4@IFC7G(PR%3;*^]'%;)MBD:+ VX]PT56=NF]I M.MOXYAWEEUC'8%2)K[$B0\)[.OJ\(E+DL+3+0K(\4IY1Q3PBID>7!/\;F7V3 M%\$+'%R)%7P2TE9]$N)5 V*JML9D^>[/$%G)33=3S@ Y]H(/4?@9FW+2J[\6 MUQE3#"U=(]OM?X[ IWJ]KK_YP!_&NRZ;B\EK&0HFS<\N674#Q;H\]+=8#^#< MICH;TPM7WBPV]CWROV+"GE_=H?E58E%&NFL9]070-R?;+ M>OZ/I$6JE]4T8\!,!2([3_\\Q;UCVQV>4*WASS_\!U!+ P04 " #C1'!0 M*<6N (XI "BQ@$ %0 'AP96PM,C Q.3$R,S%?8V%L+GAM;.U]67-;.9+N M>_\*WYIGM+$O'=T]05%2AR-<98?MFIIY.H%5.K MA;2[(QPR10&)1.(#D)E()/[ZGW_BB&\E>(4,3(G_^8 MAI_>0 _'TT7;-1IY*/['J_)?V:(T,<:\7?SUL>BT7%<0R)*W__WS^\^+?J)R M/)W9L8\__?U/;]XLQ5%-1O%33&_R_[]^>O>T()/*V*Y:S:,)\%#^DG:6_G<>9+4>M]+)!LST)YDO^2RM]?4ZI M!?;/YM-R'*?3X>3&E>/%W-W)Z+8Z';$T\/\[+Z=E_OQQ7OEKF-H?J]+'FC!J M0+*C#JW[#CY#([-X]NU_HJTNQJ%![PZAWU%7?[%5!9_NF@S6)AH=L?RQFEQ. MJAO[*4[GH]FT >/;*77$?KWU9G?-%M@;VMMR9D>?9Q/_^RZ&UI5MF85]L5BG M;ALL3FYNREE6PZ:P[ \GXQDH;*"XU= #:E3MEL&]1;H_J58Z,)Y.1F7(*NZ9 M'675[?-UC+,:[.ZHV"5S'VT% H3 MZ1T8?S?QX(YL)M5A!YKQW &;8$]_M%Z[IF^K MTQ)+3U9>_NUG.YM7"XMH#PYKDFB=X5\FL_A@U1W$[A8"+3%;3V-\7;*%YB^@ M[N1;C&=Q'%,Y^P@;URX^ME3IAJ%]Y\,>)%I@^-*6U7_9T3S^'.UT7BU7PETL M;JW4 E/_F$S"UW*T4VMY6:[%IO<=M5WU6F3M:6X_?+,GCSL)M,ALO<5A?>D6 MV%CNZ%_L'[MY6%.T70:R1C09+S6-\YAB5<7P^.?!= K:]HJWKN:8MD6_NZX^ M?OVQFMR5^7#A?F5KUL.Z9-OMV/+C64R3*CY^O7]'ZI#I@O'%QT>!G9<)4 +F M<]U%[E!Z[79EWZ6Y1M5V&:RWYFVLT HS,S CRWP2L)CWO\2=EL"6*MTPM/\P MUB;1#<-/V^;E'-3_.+B95+/RGPOGYP74'D_SG\IQ.8OO@:?PDL3A_6RYY:[% MTT7'C]*ENA-Y1\56F+N#;6]2U7#JKBG:+@.K@[+\LNZ)[%Y$VF6Z[E!NJ- " M,^_!5MK-P?-2K36[[V*[O59K;#VA8-7I_&Z<\K%77MT^Q5%VTGV9+,OOQ7U# MXAUTM]=B M!^)X\J)]2,\;W]\.:H/VD;LXM"-/N^SGLP8ZZ.QOL;RZA@DUN ,^KH#(C07@ MW;/S)58W@W$X+Z>+2)5/,/-6IN*!H]Q>BZV)H]Y&LZYL"RR *088F'V#;N+581CZDAZ_K#?=>1-IC>M^)MJ-:>XS=_WS;_^(DZO*WEZ7?E!%NQ^[^Q%KKQ-/D_5+9<=3ZQ?Q4+^5L^MRG(-4 M*OAF?Y6F%>+M=;+>*K"V< M,?"ZOQF4J?5X#E[&NL,U_G(S*.G%.M2IWS>1# MB.ZGZ&-YM\=Y;C.JG7WL:4*SZR[M>:QV"*VNN_#NYM:6 M5=Z"/Z3W$U"(LUMP+V]<2^0[[^AAOL8F-+OOTGY>M8.(==V)#U_'L9I>E[ M6V:D_)8UW?$>VED+I+ON8-8)QK/1MT&8W&8GR5.!:C*&CWX9N--&AP]KJGL! M3*.M_'7V H%>.IJTAN%:E+ONWN=XE5O]%&_S<>#XJHV.[:#9=9?J&1E[D&B# MX1R)_>&VUO6V=65;9F%?4[Y.W398G+MI_-\Y8.?BKDX,X:;R';"RM\1JUM_( MJK MQ<6-[&2G;G%_>CY%5];>OLVC]#:.9M.';Q;CAC"YO^#]'_=?%W7ZL]0('YW< M(^OBZ&\_ 3_% 50*8QE/7D2$L?.(4^R1ED8C&8EQACH=F7DNCE&^[CZI[@>O M5WE\J6R(>_=_M58AB*-,$XR,YQ@IQBAR(5!D#,48$^(Y]W7ZNP+70>7?3*H0 MJ[_]1'YZ\W5QM+/XN*0"V^UK%#^[N']?XNUT?K,\XT'E+-X\U,\)"7H:WTF7 M

]H*9ASCT^U/RO6;.SKJ%!9$Q:17R7BN$(T^(:8N1-\12(YB0E!Z.'_I# MX:<+:?:%H@0F5H_;Q&X@U:E>2&TIV!\$.64B$D)[9!D6*#'O M;=2>$L\.QQ+[H;#4D4#[@M-K,7V87<>JG=U].ZG"4ZED,@H982EBPL%TT]PA MRED,+L!')@Z'&?^A8-:#<)\@]]>WZS3?'E3B=:9F>TKY[E0IW;:U5Y*36LK] M:U,K?U,LO.PKK>7KN658Q#)-QHM#S^5EEC63>:_ZA5$#P9C!YVIXC@?D\HQH M+TJW4*<28)OM!G0ST@7$DB MJ1G"=Y1@HI@19Z>J&?;EW&T2WG7'?.7]0HSO-#G6-,+Z,#E M&;ODY@(D(A4C@W.,-3]5+?8(X]Y0=@>/_9J=,NL&#;>P9E0+?L:8P$/#B3D? M&"4OSB[$$ \TA;[K\W/=S<96C^D:VUT]0L7E4&K!S]4E-O+L0IY= 4>*U@M2_)B"[-3>6"])^:\AR=8T^$[\ M?^TFQNW64[<]0*';MNLDJ>V6@VZ]L)L3RW;31E]C.:R;^[67)OOK=:V,K#V& MJJP<)X!0-F?]7'."M:MJ$50B-F"&9 P<*2PM(B)Y%&U4AH<8&;/'"TI9$]>T MO9,%YUHRI27RSG/D+/R(6&&$+4G$,,)%$Q=9/T$G[0[:I$UA]76(N]$D>'&(A:4C5H:#W_[CF"PWTAM'O'#Q=/7P*_JSKM'?DWI MPNK$I;8*@;:M$:B? @OJ.A/VC()EV(J2\(K,]142,2:'O% MPAD2:(+VM/ 4)9,<8E1@1*7ECC@&(HR' Z.?>+*6@=&ZQ(X7Y/.]1.\>,X*L M9?1T*[X>H91Y7LTA6@V$U\:#' MD9./:FY+,VU?5D?647Z9C/VA:LI3W2(0G8PR'DG. S+14/BA#:+$IT 8H8:? M[)%1VQCI0EJ]6;&3\55.,;;CE'I;\4)2&H4"827H!L*P2"(O4T1@Y!,3I7!$ M-HA<[WU#:6;)MB.@OH;_M><&%KK1/"QNHE:+D9C-JM+-9XL[/Y.,Z1Q[/QD! M*U?OQK-8Q>FVE:2=!@HJL4B6:.13,:@_=^XZVI/9]9D>3 M\_&0NA?J"NZ,P1PZI27E" =0Y"SHAXB:E*A/&FO;8,/JQ^=RC$'>B;,#)-L7 M9CY6]]K;@NO%6R];0+.F=&&HCA3;A*)B&G%+ \+"@="2UBD&0HQHL+4="S7[ M#=FD"S'U=W/OYF8RKC7^+XL6"0OK*!>(ND 0* 0"^A<#(EP2*ZPD0J13WW1: M'OP69-2;TR2$18"&'7VT)=AO]\?3VUPFZVL4+ B+O94()V$06/\2V> $DC;Z M0*F3AKE3MW5:QD%[HNK1AS:_F2^N'B\N\0U?O^SX?C+--OV'!&;^=L_:/I0* MH[4GC$OD..?(:JE0BAJ, 09"(9R#S!J<]_9C'K4-G\Y%V!>L/N5(CW$,%[;* M*;NG*ST[CZGTY3;C:'=E,!T9%D$G%#16,*NB1@%;AT#$U#$P%C AAX.GVVC' MCL#3B=3ZPLO/Y7A2+13WG:;SRZ(%PPI')QERL+HBDD"#MY2F[&OD67J4AI,W M@D_ A&E!KKUM6HO,G=OVHD6!@JB86.($<9H4$M1CY)TER#!0QG DA,@CAD@M MF:QQ9+5:KL".N< D04$8"@L#EHCF1 Y4:BJY2B'0DP^2.&1X7FZ5#872FZ%E MISF/8/XOS^L[.UI$2,Z&MJJ^P=3=:7W5J5^0$)7&WB,C86$/UC*$'9@;F'FM M;31PO"*G M-9@*B=I$3_Y$LKV!;RB:'CVTM[8,]\\_/B;8J:DPU*A=B!2,EYPA;4!T1H"F M:*TSR#-K A@?F)*3CW9I#Q;=2*R_9>$Q/N=I0=NZ/JPI7] OZ8,8#=SJB$%9KV4^'5]G:&1JM"RCXP0Z?P%_3R3O]6\!$VT+J"Q1;WI'>OE!LKUA$K5R0 M8$)13"6R6F@$DK7(>:I)%+ \P:PZ%.=: 2+UJ74%RX>7C+:@H"'(@53CG,< M*9)">N06GFJI-7+*)ZF)2T:?O.^]A;%N((^.;[=OO ?[T6:]Z#K.2O]TXMOE M+=S/,_BYN!/\(65WS.5H\O5XMW$S!R^<0I_B=%:5'EB]=QH]_V*EY,=8E9,< M[USE%?\\+O]_]-)?_.&O8;['_!#M14K1;TU\W"LCA<"4$4P82IAK,%]BSB)- M,0*D,T,I]R+5[ M+N[7)U*0F()AL+,Z9S"B5G)DC5&(685MLI:E)E;D=XOSUL#S\L9PER/3HS?# MQQBFES 2G^+M?;JK#^E]S@\#JD05P]8(DEKU"UA+J+!2(JP21E$IACB7%&E% M+9>6$MW$!]H/,KL:[M<^D$X$VE\\TA//9W;\>TY/M34"Z75QL.IIE)S -)0$ M>L)TUE!]6D.DP DKJ[$$-2!8 M)$..PE+6H* 83S:0Q%R#W,C]..&_?_6IG9'I37VZGU1?)HN,C%7<>(2Q38>J M300DH4.2V"'-20)))($T\PR6>,Q-8%)RT4[XT1&6O,8C_U*3ZE*LQ]#//]O\ M;.1!"*M/I9!!645]UAA$ *U2><0-R_L/BVUC^9=U#R\<0J:0UCG"@T'**(T8I@'9)!T*+GFMDY(N-7#)'5=U MZWP=:U>P1X/9RW.[?;#ULFZ1; Y <13A0!/2B43DC 62CX#%*H(E1L(9(X2,.*E_-L* %(.>-@YD5\T53;#2)G.K4("%>/U$8 MW[]1T,[(]*BSI7*6[P]N5\GN"Q7:"4T9AQDL:40^) ?=$2 _H0UWG$9L&FA< M1_6.-AZXUQK7X5+K:_S/XVT5?;D0VQ8$K!8K--<^4$40CYBA?-D4!4H"BC)Z MXYDALM[)\0EJW6UCH*'<>KM;:'M(>RL[UBH:BPD4B,"%@2R&(E M4((I@!0U 3L/XK -5HM^=J2>D-*Z)'N]=OGNYM:65=;4AM>VNMJJT:RO4#C! MC:"4(&\80P(L "0(CS!%%".<<,--@X.4?H(%^\)*6Q+L+9#0EN.\$7X8KW$] MU'$*U2-0V(@EMR8B)4"R(N6C@AR8[Q*H3FISB=S-TOST<,5ONW*[,9J15YDC379KQKS@;6PB'KX88560=/H;&AP MW:7;5Y[Z5V_;E&-_"N^+'+6+!(/P_S):81MR=E4MC!4AP ^D.6AYU'"*@C4" MEF)LJ7$NLB;N:/4CH:<#61Y'6X*"UC37!VW(C=/A:U=H2Z&U@;'H!_S=+Z)R76 M;WS[DB@8T6?$G!,^-&=D<#$P M#M+0MQ$LE">>D7PT:(1' CN-"([YG2:1 R6"LK+)[9,?R@W>FXB/"L(7;VWM MOH.P!Y5"&L8<5@9L8^H1!T44!4T)DES&0$$C4+3)NZK]7-L_)MQ:DVM?&%L& MOGQ(J\$P'\:-PFZV8+&#U@KI@O(,= UJA7IN_'F%W5ZRY3Q.NW[!A9Z>2CD)2\UW@+84JL0 M7CLF )+$6XJP-01A4/R1PD&":4$TE;5._WOO;\,GOQI2+@3Q/AJAD.+Y,1F5 MLG/2,<18HDY$(3%IL!CVY#1I#1BO'V#I6;A][>);>M;RFW0MMU1XKB1)5J/@ MJ461*HRX SW<4!*BMYK9N[F<5#!B MXV525__M2V7'4^L7LAN'Q6_WHQS^_WPZN\_+N4M!Z:;!0FI+I30>NI@T\D92 MY)(1"(-T&?&!BW#R&5-/";PG,TQ',DJ.K/R#P)[DO64V/2M71**PCR3FS-@: M11TCTMIAQ%34(2A'0KVWF?Z]'[7H-CMT?+['W61EC0!1P-R:E>,Y+$GW;D*8 M:V<.6RVX-DX2)Y'RS"#*L4$WI0@>'29 !69C_2%"6$,C: M(&T=MR%P2VF#:,-^('0R8[\I&W@C>?=V1:,"_I:S<=L]C*=2A=&>"KN(JW06 M26,9(M1S% 5U01"P@LW)8Z?Q&+V\5-%(/OTE-KN+XWE\F"X5*,B_E;/K(6C$ M((3J\<)TCAJ"?V&[U70 M<)I[;'$"6'C&'+2@_KO@T-6*>]T5"+ZDT^R>/!8 MOTIWUH?\^O-,3L&>RFG06A;"&DQLK["%LN!:33 M_!8?20%%3$VR.,C8TA-U78Y_V]M,&V+J:_@_QX5*!7C]V5:_QQ6NM^!@BB"1C!-)(HACR)G#4H>D:<\M1;U>!1D9[5CL/&;]*AL'K3-^,89##*(5KA MIAR7TUF6R%WP'W=KNP!I M7V+].6V6AMAN5+PH61 939)6(B$H![W($:2B O.-Q6B4)#CZ=J*$NMPW3M6T M;2[LO@"T^3S@X?[[4H+;39P]J!1&^B2I)$A@;1 )B:'DDD=>>VV(EHHY?CCP M^HD9/U7<=3L._7JB@;6X(K"]Z>X7A?>3\=676-WL>(MDM5AA M:2+&@&W ,!#T,)-0X%HCR1@LGYQB&8X8/+O*ZI.<5Q]Y^%B58U_>VM&[\2\@ MZB]?X^@N_@Q3[GJ;KZ@1W<(1;C7# GE!->+YV1$9G$)<.)QDDB$TL0_Z<2,< M#H+)<479UPZ[5[_^)]KJR]=)6XB[)U?XR*PWPB&54T6HY&"O4 HT4A=2P$)Z M1=*INR.. [3#)7BZ^(+6MWDQ#B-8!&:<(\!?4B8A2R1%QM#,,=8LFB"Y:Y"V MK!^;\X@8.U"&)XNRR\F\:A-DF5ZA&&7:,(6TS#D "95(9K/**RRI(4)$U^"X MOY^+R*L2 7F'!?J.2IWPIVR++G0-%@F:WM)9.4&Y@: Z' M6#^7D8\(L<-$>((0&R0PL=M%V3.21;":)NXIV.HR(>]#1&#+)Y2$,(Q2RZAL M$#G93YK/8P"MJ10[=H \M^M7GPX\ME5?\_G(9Z\=PB Z*K,CBW",'%,2)1T5 M@@EN>8R4,E5+J>N^1TM__%;WY.O2A=6)2VUS((P$LY&8@,!8]"AR@ZUB&L=P M\N'+AP_82_=C*P+J>RVO">MUQ0M):11*890,UPCG@"4O4T0Q,F*B%([(=LXN MOH?A;TE"/:RO7S)KG7EF+VYN1Y-O\>'P)N&NYT!*T?J/321;U%.QDLM[U5* M[F72R)746DX Q1$03RT1F4D@+K )1T2_+^1)MD+^SG@+>- M$=R0>KZQN/K2MEXQ#!]>Y'G]%*>QNEODT%\D);.CZ6 TFGRU8Q_W>QZC_<8* M1VRBF''D#=;(6A(05M2 BF04X4";LI./V&T#-+MP> Q)'YR&M0;W5++!TSW[ M-9@[C%!Q3LXOSC0^Q_B"J[.+,WEY3L3%I3;82*P')__V7(M8ZD6")[[.[9.5 MM:TF"NMY%$+I;)MYE((-R&/%D<988K#781-J<*K;SXG;Z:QI;MI MF>6V\ MEYF+^K?96NI%"<4DNE!J>75X,.#%G6%Q(J<0EIF>2#@>7\O+4C]DZ MWT/;$MW1EJ5?QU6TH_*?,3R$R^?(UOU6H$TT"N.$L4Y)I 57R+H\+4*PR$DK M)"-"!=O@DD,_!VA]+#8M"O"8^]OR4;:AK:IO:5)]M578=R-;0Z$P*="<1!-A M:SVRT7(D'9CSVO'(HU*!Z 8@ZN>YO)YVK';$=S0(/;T& <(Y&$:;J13.BX Q MC: ?TH1<(A&IH (RB01BE1#PXW H]?-J7A]0:E6$?HJ"H#E264"7J0\(NZB2H18F5X.(R=[]"&W[1EN261NZ\ H'SYXHMN/P^$HQ M?*[Q:'U+E M-R>#L@EV>#13F5) S>F9 32#(19GA#6X-=6O+[/Y(&_0H/L1 M[!%VLY6.O=;L7MQ&W?]<:C?)@@9JF"<.-@//P0@-^4:CDX@RZ74(CK/8(&]2 MO\M6:_ [@E1;7MCVL>S752O4!6@!PV%^34NSX0498CV F7-FU-F0P#SZ7ER1 M?2Q)ATJMX^":#:?RCU\_OK=^'[!R[,/XT[O%WDT_[Z/Q]N_N]HJ%#5H%KQ52 M%$LD@I+($IO?XHP^)(,%);4N;1X_]6;#$7V9XZQML?66^6[)^&4,.=G. 4C9 M5+,@&*M@$G0RY-9@CT3G6_;+<+X7NBA3;1!<$I4CEYHB(!(Q=!<%($L%\< M@QWAY/?.'PC!AP]+WWOQXN/C$<5YF4#'B&-_],0+_RJG%(]9KW%=@KE5232Z1S"9I GGJ-$'&B;BC+%\S.@ M]1)7'G_#;-=;<&PI][O]O>KG,[_:F@O1]7&YB5*1A+)L\8A"@,5410WL<;!N M= I>$\V8TR=_CZQ'Y+4HQR-C"S9VV'GF?I;CCNH\*U&;2J&M]=%2CIS2#@5L M.1*,\9P'5= 6SAV)Q^(T2.F6I+AD?'TTHN25]P']6=6VM'^V-I%L8@$%$_* M+.*$2)AIW""&/4$2>X%3B"*E!D%@_=STZA%G'?Y-O?&\*%VNYF8)120<"7] SQ8S69G@QO!"7Q RU'IX; M@0]'F^@GC42;<#L!"7>*OT]Q-J_&7R:/UMS3Q?'FJ-M)O%"$Z,LATT:?TX$\ MYP-,!$AB,.3$\ O5 &OR!\9:VW(]\J[Z878=JZ=\T6Y->?#ZJOW&,K37:=!>SYU8A?8FN]M:L8A:N2 M@W:I1%8+C1*')<=YJDD401A>*]-$[[W>E4AM M5U6P% AT7G,P$FA WC*/K(D:9$ (])L+BD_>7]GFX+Y\GJ]]^?6EAVQA?>#] M_":/5@RKJ]%A.-I K)""<.R=0(1:#4PRC(R*%"4K0_:(A,0;:+X]O<9V'&BU M)]+.%997,NE:B[@#U6U2E;TTL;H1+K_\=NP=\)&1[?O=:K'">T5QXAQQ;S 2 M%E1<&E5$3H/VBQ.UB=;RKM6TR!=Z]B,#E^7H9C .^;\S.XT!S+GL(=VX<^U+ MHAA0BB\I5P2?7UX.E=%XR+44%V1P-B 7JD'>G[Y.VPX=JDDO$NMKOWK>@RW8 M?EZPH%Y([35%P7.,I, &/(7-,#DG2$H-]->^3J@Z&?T&,NK/5W;/:\X= M?^_UVYE5<'.EPG+KN%4>)69 +4K8(8E!&U=1$J^\448T"%?D?7E;6X)#JX+J M7)-\U+JZU2#?1SOMFGI?WJ9E:T]:ZID=Y3S*GZ]C?OHY3:J;^U%?F!)?)LOR MQU9AGS(V978>TAALW?'7URB@XRY#P@$V&]-SFHB1*? F&$&G[R"79ZA$LCR76\ M2;Y<[Y<'"C^7X_)F?K/XX\?[%^Y^A;6\@JX,\WXPRAOJ\^Z>V"8P?=:3ATZ< MS[?%L=6D4%B?8'H[A[@5#A'M.;).$10DM1';Z).MY8<\JASVW31V$2JX3XHP M:I#B0>:4>@QY&QRRWBFP%21+[.0?B^\$ 5M7B0[$>IQ-9F-'WHV_?)WD]S"W MVN+[TBK 4!$J7]^E*@H4'"%(,B^1YQ(KQIR(]N2=-"<$MT:2/3W$Y=?*V\/< M([6"@7J@<[90IX1$(!J+2$XJ+$!'")PIZIO<_>K'.71:J&LBVY/#77[!O#78 M/1(K-*/)*08:H]8261P"$@8+I".-7G"&86LX]6#FDT)=$]&>'NC*N_;6ND=B M!4G42YTU#:8X(IQ0)!))B,?@+>$L#U(K,0E,$CIF0T.#%O93NAS?\:D&LDV9X=#S];Z,,B]>R' MM-Z/<@)OJ[Z/TVF,&]P\]7P,=4D4Q%,?B$A(6@/#EC\Y0B4B 5NL!)9&'S& ML&XW?H'1^?(UCN[BSY/Q['K;%G4HR4+8P+T%'IT7-!]$:_B1 LJ)_(.$=9;( MD\_\V0TL7CZ@WI^$^]JOZG8I[[M@X+8 OWM*A7&88^<)2IQYI)@("(L$RZHR MB1$3*"RWI^Y_."G4'2[8DP1;MFO;@ENF5="47R7)UWP3Q4AA8U!,CL$DQ-;Q M@"D/X=1=#Z<'N -%>XJ0RT9M2XC+I H2@Q(Y!X9()HM&@H%"8A:-5LR;1)T] M^< -2A;8Z1 IFL+79,K&PYFMO) J"^\2IXYB8GE\,E%)4$:RED.R<4W6AA>$#=?X]NRA^ M'8=RZO.=__S"M8>B&],V-**W6XA8:1!IS@(X#LZ16F/0]#S+OK;8@AC&-Q!#Z_B MIWACR_%#1[_$*M\?.[^?A#DYRTH\>2]1[=W> GAXQ'.P\GYGAQDI-C37USV! M#'9FZ:KI8Y]AK.1L>W77[=5*SCE,OI\L&:Y1\3D( (%^BZC@5O8)KRS M]GB*T$;6=Z5ZV%ZQ,-P'911!)A"%B)<12?QMHJ^O%^A;T>+!T&A+ZL9!#;VT]@M]X()JG1-N) >WRONYV.[]OI2_MX;ZY^_\NIK,29DH\^_:/.+FJ[.UUZ0=5M/TP\:2R MK#QY/?VMG%V7X_S^0 7?U Y!:8NI;I'\N;P:EZGT>9[[A3H.6OK'R:CT'29! MV=KH_3?33]''\BYWOF,Y;^_C&9A*_E:'1,'M[= MW-JRRHOLA_1^ @9=SC#42RJY[6SUF]9N!R^ULOETR\2'K^-83:_+VX^Q\L . M&.'3G+-E/EXL:G:TO%/DNU_&MK)YU)7F0+NTC;X-PN0V^W2>"E23,7ST<>DN.RJ+TPB*YG5V*\&V.9H>E8A9A-_.\?;A>Z4A]M]*69?IZ[:?S?.0SBQ=UJ3N6NV]FC?_<6 M5?[A[#3^_4__!U!+ P04 " #C1'!0,A&Z3.]" #"(@, %0 'AP96PM M,C Q.3$R,S%?9&5F+GAM;.U];7/;N)+N]_T5YZ;*D_@F M.3-[/[$8B[:U(XL^E)3$^^LO*(NR8UL210(4G;-5,[$M 6#WTTV@T=UH_/O_ M_G8S^^E+42VFY?QO/\-?P<\_%?.+OT^7U3W].BL5?/UU6YP6#VF:U]].EML.CQO3-_=?;IL^&_HK7K>%4LHWZV^W31?3EQJ&0>&;__S] M[.,:DE^F\\4RGU\4/__'O_STTSUR53DK/A27/]4___[A[?>,W!:S7R_*FS?U MEV_4Q46YFB\7Y_E=_GE6J/DD?%*MBLG9-/\\G4V7TV(1R%F/>ET5EW_[N>X? M0(,2HGO(_O68,99WM\7??EY,;VYG ;PWJ4BNH9FL9L7[RX.M[VRQS*>S*%SV M>.Q P'RJOXG"Z_;%8F/+F\W2^?LT/$KJO3R*2U,4_5M/%M/[] M?%5=7(=9X+R:7A0MU:C'D(D8>NFS\'MXR++0=_^OR"LWG_3@KLOXB5A]EU=5 M^.U+'V'M&B,1R>=5ZKXORG'R=S@Y:+4_;17STL5([U"\B:0_O M=O/)D30>'" BL>TFAY=;1R#C?D7_E'\[3,,+3>,24%M$Y?S>TK#%95%5Q63[ MM5HL@K7]R%O74J:QQD_'ZO;C\ZK\,JWC$)N9K1^';8>-R]C]K[JX+*MB^_'Q MC+09)@7AZU^W@-GI9="2L'UN.\EU'2\N*\=.S2VZQB6PW9RWLT,48I9A&SFM M(P'K]_Y=<7 GL*=+&H*.%V/K(=(0_+!L^E4P_PMU4U;+Z7^OG9\N])XOZJ^F M\^FR. LT39X.T9W/R$].#4\*QD_"4ML7^4#'*,1]"6;5PZK[0-"X!CX5R M_V';B.Q1@\0ENJTH=W2(0,Q9V"L=IN#[5M$>>^QDN[]7-+(>M."QT_GM_+(. M>]6SVX=B5COI/I7W[8^BON?@"9B\G[U_#Q/US>IF_>5Y?K?>//]]/BFJ=^7< MU'3.:M5[?UO4V,^O>G$>[XD)X'CPHKV__/[AQ^^#8HR=@,4_B^G5== Q]260 M3]9?-Q.W$?-4@\HH]]T0YT MBT?8YH=;+*=A7B[TW6]%>57EM]?3"U45^7'D'C=8/"8>7M9/53Y?Y!?K%*$_ MI\OKZ;S.VZC")\>O\E$&C\=DNUG@Q<81B/@XO9I/+Z<7]1QXG_X9EOGS5(OKZ>UY45T$"L+NK,YB]*OY>OW*9V955??)C#'8[/ZXU$!$6:.&7JOZ M;FJB##X D_>AO%I3_JPMW?D1UEF$H5,S6-L$\^7L3DW*V]I)\M"@*N?AUXO[ M7)88#'=[5'H %D5>75S77J!@E\[*:#K<:N34['TLKNJG?BANZPC9_"H&8P?& M3,U2NTW&$4/$(+A.3GY_V^K$UTMM(Y-P[%:^3=\8)*X^+XI_K(+NN"]MTNIV MM4] RM&(M>R_D]0P,S34;GY]3/#V^.UTOGPSF=Z\V;1YDS]- MQQP+_;*'I2.Z>D782'92F3OD(3<_"GYO6-5V1 M3H_?/[CXMBSFDV(RR*-['\<>E-J7EM5H!!P^*)WT44>=<-Y24M/14#(K+UYZ M%];OP66^^+Q^&5:+7Z[R_/9-O=B\*6;+1?/)>OGY!!(X=*I,.2>XAU(IS0(ATWOD-*MP30=N@ M\J"-JKKXJ:PF1?6WGV'3:Q@]"CH#]/BGVPF;<\CR-'+_C9&QB MC"2^\_"LY>)Z6LPF9\O)[]]M/IX*[Z6VF?::2D^0QU1+P'A@63=T$L; D*)[ M:0=U0&['HEW&Q:.SW+;+PWQRS&)YH%O&B :4$4!-3;*%@%+<6!^.2]A9FNA' M6#?CHI="]OMGWX,=,R2QIYQ:9;1%G#@,MMHKH41BQ MK-.&TE'@OQ%ZC[,>W M"(]4Y&-9FJ4C7E@7; ])05B5L)-PNY64:E"!MEB:(P)_<)4^#IK.(OQ8U =S MR@#A9/IE.EGEL]G=VYLZK;&:YK,]#"_VB[OON!FID33(2 0!EP)X*F3#/S>N MNVHT?G^DN;?(*I1T)I7A2 MSQ?7^7W6ZI=\]CAUZ:"\G_7,H#=,\:"\@@I"E//:-@AI9D1WJXJ^1DGWQ2>> MC-?9XLO[]/^'HS7M);VC?X:8<=!*9K4 MMVIDIB0AF+#??VX4AYW'VFEZ]0$6+!%$WPP8Z<%._RF];[ M[&V'S JJ* %*&>(LK\U.Y;84.ZN[>TW *Y1L5USB.33K7\-VX#Q?+HMJWC[7 MZTF_C$"H#1-<6JV,$XPIHAKZ@]G9(P7P-;C#(L,3<2E?+,N;HEJ7KZK=Y]?3 MVR.6[18K/E!*(>:2>OT4T6 Z/#THZ3(?RT!/8+F;]- MDXQ3Z0@T&B@AI58*:=N8GI80WRK/^64IC]QEUA.)V$;XHR,$3XX9'&E\[QXH MPV&7J(431BD+)$>!N298;QFA/:+5K])A%AFOB$OUTT,EZRU ^Q7[Q>Z9=J:> MEAP/_""%@;&F\1;8,'WU>--?HQ,M#DKQ9+[>WS761#Y_3%CX;G533!Y5FCNH M JU&RR2@V&/D%2&*".\D-LUN,E@OL(>)_AK=;$E ZYV%]NC\5?Y"#M:!-(7C M1LF\)X"8L-:%32;2"E")FFB_M4QT5XCH%E^ZY(6DD,5(:7B!P!?R9UHD.K0; M*%/6$(@8,L$JHB[ !EQC%[E HQ]9^D,J^>U(BD@"8LQ9XP5JVB10'#]2!K%G MEBFIC;5<:*N(:P*-#@KFQC-[#*8HR5%,K"EM$S.ZC98Q9[&4%B.")6-<0.,: M9XE3B'3W):79>XY'8WHBF5AKCDWXZ#=JIB5VX45A#(6Y%4%,F$?;-X;Z[B&$ M-+O:\6A1)$13:U.^J.M'U3]:))/T&3-SF CN*)9D23'P3*U'1R:K]!LU"VLUE1A"'E9PH3S'6HH-[QY;V-W9EF9O/2)=BH-H M8FTZF 1SY# 9U01*@YR5 A%HJ#2^<39Z[T1W]UR:U)CQZ$M7"(><;KY/ZLA; M)==$?DRF@<#"VO"B8!KF9&+P=E'W')KN$U*:E)OQ*%@JB!,KX-%).SV'S032 MCE'G$)%""Z\I]LUJ[QUAW14L32K/>!0L%J2)%>I@,M"1PV2:U Y:1C&E7'&, MQ,/Y(2^]ZGX.)U&*T'@TIBN&B36D;9)1M]$R:<.2+@15M>Y+03W 344);\)W M8TL]&H^^](0RN:ET1/)2CR$S"2F V,GZ( QACA#L'W804/4XG/NCNZACX#F, MP?T\GR-*I./0Z)G%Q L,*.1,*@*17><-U5A@H!S&W77KAW=#QH4V^1IW5'9. MKT$SP9411$%KE"$(.V:Q;3BWJD_!F!_=(QD'T=2ZU"OK)^8S,D2<=,)9I0AG MQFAI%6QP8;R/+?ZC^RN3 /R@>/_^Y@FV9^'/^+6=7_HL_'X[*^H+ O]?D5>N MOL/CQROT[!1R%C,/K)/2&\44:"8$1W6[ZAYIN#UEH6?CN#?&$!Y>%D^\0@AM M2@5@K8'O,1TQ;_A YK I2E$@A)*9>$-Q:]-1H-6V+P/V<)QF531)MM",&'C]<^C* MJ$RV\:I()+O@_ZZ*S\7%V_G%_2]FNKS;;QSL[)!Y(PVA!CG*O>=,6.-80[%5 M8,@[DKJ?I^LJA3(!1/V%^NMY&: IS"P//+64ZPM],B>"FEL:C"7 &(82>^0; MWQ+WM+M79,BCDE%%VQ^ESM(U^3R?Y#4-)I]=Y=6!%W9'\PQ RR%3FE@ME,8^ MX&$::H6AW=/_HQ]'2BS3. !U]X/I[*;P, MN]:M&CNA!KT++<(Q]ZYACH2817.!)JL=K1R#82L;6.+8$ ^($,T>UWO)1W0] M1Q(=2 G6X+'K_1?/#QB?]C4[Q5F@9/)VOLSG5]/ZFNAU?L!65'LFL3;=,Z@! MIP)1 !DE82E6O#D?#J4.7XPA7KV'D?:1ZD.#9$H8J32@&"#EI6$(TDV( '+ MP9#WGCP#IM/--"82P@@ G#,#-:AYUC0RL3TH_3D1H!^Q:!S6[8C%N>HW)VCD., MHPEXACTCH\;1,!$1!1V4S0%L*#A$8ZL$U1?MPP'/H_#H_MJ%C\3CD-T!I\C+ MS3/EG=#:" \E(D!18F290>V*M)!H8B!"2S#?\*<)>0<0ZNE$4%[(3JL3!N././ID.W%&J MO&("*VZ9 TV"3> 1DY&:5-$D=U@3>N'T8^K$J,RR\:G"*%1@IUVPMWT&D9 < M&XJIM (@+Z&F#6_(C:G 9T0Y[9=\)V2&DGISU&C/VOAG,;VZ7A83]:6H\JOB M[XOB\C MBB]=OGU>E;ZL;O*W\\OZ1_W9AR*\&*M@DC71R8_3^47QV$#/E^'/Y2I_Z=Z) MQ$_, C[2.&(!=31L$8!GS>7D,%B'N'MIB&3AG"3Z-RZ8AU)-EU?SZ?QJ\;XZ M*Q>+ 37T^ =GD$#"((?(,.6P0!RJ[V>ZY#A9?%R*:8L!L[#&" Z D, AASRO2P'"\>9$^%(NP55V<.D2>X@@WA%8@PPGF4##-$="DV>Y!;W2K M#4SJD/CP1[B9 AR[@(K48=(+4)#MW >$$3WN;XL;'H\CVKY'N(]#*U%P?&PG MGH1A%%L$./>.,F>DPZ@!17']XQS];BW]EB>>C@/NQSC%XE1]^:'S2"&)L#!( M"-?P3"3AX_8J]Y;DT<=9NN'USZ$KH_0VCT]%QI(8@)0/5#'G/>0X!AV#];:+B%#5>"]ZDT.*#8N^\;$N.55 O>%^>>YT'<2_>SM=:?EW.PJRYJ.^$6-[M MH&0 1V9#7QMG[?/&&7'$64Z=1%8Y;RBC\CXO0W&&L&M5>3TQ9P<=L-\US*P( MUIX-*P>A# @.@E&I-QP1IEV/Z]3CNE?["..I4[4/ J-VF6XYNW_-ZL*WY7P] M_QY(O-W7+]-">Z:L\F$C88STG$K9 $0Q[WXQ96KW:4+[3.(J-'<(0KJ[0&A6L@M8IHA-6Y7:"2YE>F0^K&T893.SC$IP6F$7UOA MY;T-=C"Q]EG;#''DA!%2$F\0U*)^R(8GRC4988V)GK(IXR(R6#+M9+)&.)^= MY]/)V_EF@WE0XGO[99 @;27'@.OZ#;'UI5P-KT;UD'XRWTEX'MIN95X(X8TCUHGBS#+Z[LH\ R7"[] MQ>IF-:NWX.O[86H0JN*Z7B2_%/=NO<-30=LQ,JX,-H%K:0W%@@E**&PP ,YT M/X*9+.$N\K20"*FAM.7>&W50(1XWRR3&4B(9=MI&6T0)$+3!BGK!NB?\1K_! M*8W,>X QE%C?E?/:^1 PFCW*\#PHYGW=@H4LO3!<:B6EHX!@2)OICE&KNXL] M^G5*:<0>$9RAU"!,0%61+PI;W/]\R0'[(?#CR^IK7NW+QSYRI,QPQH1P$&"" MB.; .+?%0X >50O3G<"+YU5,"]9@1S&OPSRW>+]:+I;Y?!)4?I_7\&G;3%F! M-518U;>#*>6E],W>B'GL1J@ R:3VU(G8$ZO!Y/^,^X#0;%53?%Y6:ZDLE]7T M\VI9^U0_E2_/CWM=S3$>D$F*H31,BKK6,H->U05Z[]'CS,#NZU*RG>E@FG8* M@ >S7*ORSV0#9USM?>CXDZL DDJ' MJ9LB#*W"E*G-@677&4\)4!I0X$)VBNHH7"S,@KIC!GR0,FQR56M MA;$_N>HX!(9,KEI4RT<*$/YZ*OSP46TE3U87R_?5QZ+Z,KW85BX3!\CV3HS>4/@8F=>S-[V&0*R MOE< 42P)"Z8' ILK7@-/&&(RSBRI_B)Z+NMHX/P8@A]50M1(Y'TRMU%-[^&( MY^-VF4!A5R&.#7C7?>:?=U5Y/ M ])(E,1]VT0^ZE./X;_)?@]PA]'"*TBTC^5LTF+V.=PYLQ1BZ;B#D+(ZJY@HAANN49^# M-4-ZJ7"SN@ZE[Q/^H5>9JJ\U9))P5CAG.N%$-'Y+VN$U[2,=^U[>^.Q"#Q9UO MUS='SJ_;ZG7TR71\ODM:!8)P31C#WL.'18,VZ'Z]-%OV-*.Q8 ML RWF5SGP(2)Y_>\^JMX1/G>G>6N3AD-\U[ "@"N"3>40P$;"\I0Z 8],==. M^!$D]FRK&0F>P2;T8AXPF-6E4B8W ?J:_[I2Q6%-.- SJV]C(I!H!HF"FE*O M_);?NN+:^,R]^.H0%Z.3K0G'K 495YXKR#4V'"C*G1>H\:\81D'W*H')%OSX M(Q163$T%!HT&6T][I!PF.RB38L7O#,APIR3N M$UT/3^M/6F9AU?+U-3QA"^(]$$)RU01,+%>Z^WXMV9&8B +N!\90PMV=/?A; MP*O62EUXE#?+M]9*?@K4(IT0 UX9JI) M/-VX+:?S59C&-O-976U[S<%]N\!'L7#?PHH8A#2=Y]7=&K^CST(D?&K&ZEM< M35B?*:1<66F5( W.&/#N"BE>@4*.!]AA%3APLIF8=;"S][ND=O3(E'6(""*@ M1U0S((PU3:Z/U4)UKZ J7XWB] 5EK*=AJ.? 2VTU(\PYKP%A6TL,4-,C806\ M MEV!F*P\]N/*[#V/&9W]%B9%K5GW4IO@1;,<42XV&#BB+$]*B>_AC!X:KQ. MHD-M]2-CAEI()4&(0H,,%<8WTYNK]VO=9?\:(I%]L!A*KDT5FO.B6I][T?EB M>J'F$SN=K>K;-P_'*%J.D$%'F)"68A#6.<*(!ZB9&QWNXZ6$KR$^E0:ED6A) M=^W(< #3,J.8H$P*88(QM.6WODUX?*&,Z)(\3E..1&PD&K(^DFFGB_KPQ:IJ M%?OL.&)FE1'$ZS#=>@,]@"C L\''"XQ[:-1K"(T.@]I06O7D$NAWJQK']Y=K MSA[5O&@_'74;,&/!D)?8"$@8)I * ;GT]V1I)6F0:7(<]['JTP?^35M.;I0WT/]_[Z^4^;9F&?R+RCS@,B M$;92ZHWQ%V!06@R9^7/4N<\(@BVC0C.4!?.8S(/UT9\WSBR&) Q-,118*N0, MW9S$"5QYCL0X#X'V%](>:?="YD>1^VGD?: H_BG%?:I(20"GIK+%$=#O6F9& M$\*)5@ I!)"!D@"ZX8+&^$4CKDB= 3+]@1X#F5X ].X"]WR#@'!BK@ MG8%!H:D GK"&.\*='O?BW4]@!Z3?"Z$?30]&N9B/0?PG$ONCN>_@NOZ\<681 M!XAK9)!%TB/.\::J3>!*>-7*5S'LTMY7/'NV\9TP.86DFU7NT"J_HTNFL630 M"BXE% HH$LS=QA:BFOON)9F.#V^>>J6/ ]$IE>"L]I96A^?[ UTSY;6$-/Q/ M-)1&,$9T8]B&71$\LEYS"350!C<4>R 'K>;5TAJ()H0R 4*= M9?I_/FI34V#R>3[)]XOSI;:9AH0I+>OKN A$B@:5;NAD"J/NY^V2);.ED60$ M< :KJ7&,:??"/.89 1HK*[17A !K$6TL8!8,U^[QEN-S24YLU/4&YS0B/[@P MO]0\ ]Z0^J2XK+W74&*-G&LX@U3:<9MM?42U5^J]T/F1Y#]*8^S48C^-N#\4 M7\K9E^G\ZGN:6]Q.NJ=?AJ2#U.M@PCKH&764RR:!@3FD1EBZKY_(GI=:BP;. M*3=GO^??IC>K&UU65?FU9B>_#=\L[X[XN+C;57DD_?SQX%/N$=UV@Z1 M04P !X)YR+!4.+Q%AC<(" F[J\VP&XG>:I,(L,X[Q._I\;.RK.KG[]HD[FB> M$0$=8@!1*C@W"%B#FJP'[@SN'O--=M EKG@C@G/*Q:,YD;?.9EF>%]6TG+CY MONSR(T;)I.L [F3+NUX,A!,^,4X)H'U79:$D<(-5O%-E1U3P9+5OHG M^8J1%L($RO.I#--6/K^:!JOE7;'\LZR6UW$TJ.W(F?48A]74>H<$!)A[ QK? MGF" =$\\2%8L:% U2H1CTE-):_6_N"XFJUD JO[K]WRYJL(HQ6+_29\8AXH> MGORN7!:+\_RNMLE/?<+H>PEOU:7USNQ!P33#,+S?@C+F@'%>.KL)4SK)E&R5 M93T$CX?.$[W0.@.,UR%8X2QDS!MEF-@H\3JKML=Y^Z,G@[TGB7K+9N^FL@L6 MHSX]]#U[!R):SQMG=94I**0&5 'MZNG-P 8*BP:]?.BHB%8OL>Y5D0ZPG,8I M]2Z_.9R"NJM+A@F!"F$%":]S\!@VC77MI'1,C3NFU4=D>Z7?&Z$?41=&&=\: M@PI$VD6HBV!P+M;@?6=8K0H$$-J?FM*F;P:XP8 C)PSA$B*/6UF1@GD&).. M^HND3 O2D._YDVH*C_UA!U[W/3TS&$PJ1Q4' #KFN74*-_PJS=#HE2*.;1@/ MH:$TXK$&[Q'_XV89MC*HM/1>!KJ5YY1*WG "G1QAB"FVK'O <0K!WA5UK#+4]\D^GU9_Y+-5\7N1U_6I:M5)]:SZ3KBOTP=R# MY[;Y9)CG)E7]1V75TS_!E#>WY;Q6O-KO?EF$I66R_;J^8W2Y.)OFG^N017)? M_ ZRMA^?5^67:;V)WKRJ@U%S_^N3HO<#/WW]ZQ8!.[T,LBKF%XE?M$?/'NC5 M?O3$Q&]9$R2[U_)W1:JZ=2\\:3 LGSWY8<;TJV58<]1-62VG_[V^UF%3M3]\ M53^I. OT39X.<4*"CR-E@&MR=J-TUB):UZ9[YIV#'B-',=# ,X&%N(_W2ZP< MQZVNPTK#_2-%VLW(H8A>^T$"$LI283F1A@9+FC"IT :)@$J/;-+(@;ZX8GUZ M'60JO$8=#-S#J[[[/?^OLC*S?+$X$"4\8I2,(\LP!PJ%K1N$ )"^08\R9WK M?@8R2CV7 RB>3;:U=$1/]'TT89^GR-"G8:Q?I4Y9/B)J_^6AP\ ?BT:48L858"18#Q M"'G $),-1YJY$59Y3R:S,BI40PG_8WFY_)I78>_XI9B5M[49=E +=O;)G,:: M<$@! ]AAJVLO=<,C@;A[-FVR$-I0ZA +LT$GA9KOEI/"HZ:94BJ@PY!AD%OD MJ92;D'#8D&CBNP?-DT78!IT4ND,U6#V U6)9WA35AV)V?T7G]?3VL![LZ94Y MY9#FVC*&%288&DL;)5=6BNXW<2<+P@VE$O%0&RX$7WM5;XMEH:ZJXC[0=% Y M=G?*K)+88L,L9]HY"2#?A)X#EX;0[H4#DAWL&DHWHH$VE&JL[\AY!LDAW=C3 M*W/(21WXPEPZ!&%]LP[?O@+&=5]+DAWS&DHYXJ$V@AWL;]7^.S(/=-=:VI08/N47OK27_?;F2\1J AZN)B=;,*:V0Q>1QFZJ8S.P;+ MK V+K 2 ",'J"XB1T;4^Q?DFI1' 1'H%>/0K7'Z5#HF!'N+6#4 M&2<818HBKUG#K2*BN^ERBIU.4GTY'JVD*6!+,-[*:CK$$QY'N>\_ MO$L=:=\^.RF*9T6^2#SX0,D4]P][$)3.9_G\HOAX7=078%^6U=T; YXK[\\S^_6>Y"_U^50P^;$U#3/:HF_ORUJV.97IR#TX7CW M^\OO"1DLV^PI24].3'PHZLFYH:K.Q5U?Z+FX*%?S]3&*1S(?@M"D;^EY508A M+.\"B^X?J^G:UYDN(6K'TP9ZCW<\_4$1F@9U)O#R<:M3)QSM).RL1;K1XVC+833/M5H_Q 9@LP0YX#!S&/FD'5@LQ$W MB#(YY-'QO8E&,06Z,\TH*E:C3C+:R:F^:^X%ZO)V/?3./ O6N0+!@I;0*$\( M9+ !R]!!+SOLF%042QN>W9,7&[RA-JF[ ;EK<8]6B]Z9(L!ZX!B62 &KB$<& M;/D.[_.X4X:B2K:MUO1&[Y]'>T:9!C1VI3F1/VQ5!2G4&?OSB9]^JW\['*;9 MW2F33FB"$>>@ON-.0"'D)E!I, T3^?B\[U%E]]0-%@NHP>+]YP6I4U,:?K#P8'R)/"F%W0^=P:HHU#Z_ZW(V>7MS6Y5?6F;L[.F5211F,.., M]UQY:"&VS7D/0PCM<1-[LI2=E%H0#ZG.U;&>K33GLW(9_MY?%VM_K\PH190* MTQ25T )&,#"RH=U"W=VJ2Y9[DT+*\9$:SJQ;%Q&YJ-%_.P_87 5#M$4>YYYN M63VA,6$#?,8(C;U6J''+$&- ]Q*IR>HEIS7PHD%U M]^A0K$=D1"*@G7<>4V8]\]BR38:*H0K@[F;H\/O,_MIV(E1//F/M3]W:URWS M,KQTFA%'F<&*"0E\LV#3 '_W\PC#[UD3SE;'(Y4T:6M'L#UI,L.'XDLQ7Q5I M1[?317X53(>K]?OY_K+Y^-27!KQ,UEF;VP,.=,TX4 1ZXZ0/)I=6F".PF6H< MX;Y=INV@7!^\3V!/MPP"&$Q*IKP)5B;%AOC-I:+20:M<]^DF]L4"T<3VM(IL M/'2&#/POJN4CQ0E_/56:\%$]?4["%N!]M;ES9T=T?U?3#$FHM0$T6((,(\() M4JIAWX0=R5A#^7%D6D9%IZ--C=(AC:L89A^\OHN>RC@;.CR'X48701R+ODVTZ:GH/.LN^:YABS3*Y.!$$O6?T_FD_'JLA)_VRJP6 M &G!E.*( P\,2Y/M%\C"@?=<@$),1!()Q03!"$ M'4,-"EBA'O?SI/3HQ)5B=S@&JS9TO\P=_]R(>YD&D4B2-*OEYWS^U_W]L;N#P2U[9H!S :4UC!IEI?/,>](XA#PR MW>/!R1;/Z%*-@$LDV=:7AN2S^SI"9_GG\L!BVJIS':QDBN(ZL8E ")1V6X2( MMJZ[>RK9PAI=PG&@B23D3]7]4=)C9/M]G\P&JP H*#D#AE)),92-M4Z,\=VW M,LF2^**+M!%+&CS=D-_R7/3K#BY2 MX;1E"'LH%:"**=V\S19#RWZPX*(# #E#15!C"BD &C0IYA80 L=S:WDTL1T3 M7#P.G=$%%^]+QFWFF%VW$KS<,#.J3CJT !"H.+?4 J\;UB5"W:OQGC*PV%J> M941L4D:7ZE* =0V31R3NC2[M;)]Q[,*+XRE50!!!" "P>7^@I9B.-ZS81T!E M.FA^#+&/+JAXA_EJ64T_KY:'-MP[.V12$"N\!(!Y+0E0 M2FK14 RY&#('I(6+,P+R90)8!CQ7<5'4.X!UB:[IXJ]653WV],H0YE*:P!:T MR!/E)/5XPR=2''6_1N%X+]KI5NKX0)U,(5K57-C3*S,2"DL!YPQZ#+7&CJ*& MSQK.<2[E425X2"MZH_7C:L>H5ORQ*L6)E&&S7CZCO/7U"CMZ9M!JX D$6@/$ M'!/$RV:M1$ -:P:V<]5%D=Z.ZQ3BH'1"BT(7\XOK^OZ@X\V*[[IF7%+#K$54 M.L(T-%H+VG L @ #QF]&:5OT0>MT^M$0??PZ\J1KY@BQCB@/1/BA.9>6HX>Y M5XA79VIT%.A!38F"VS^#QKP6\V,DBC+*V.)!0.*!,^-G< M>VV"=",++7<-8$7$:8@8\N:'6RRG-_FRT'>_%>55E=]>3R]45>0_\WZ1P6@TQ:57/^15%ECF"AD*/]/K.4D0\W*1*V+!I$D-> MJM0OLMQ:;$=%EH]"9W21Y8_+\.ZN:Y)LW]Y\MB? O+-]QJ'2BCC+-18T+%]8 M;O?JTC(\9&'8B#O,MM(MXT.4,N[X\5ZM'E.X-^ZXLWTF@>%:* 4816%-TM1N M]^ 28JS'N7&,)*$^?)D)*0 BD%",+..$."&;V+L45G0__Y8D]AP!^+(G M! /(S+S;(S/S+O/0F; R87T8N^[]ZQ=%G2. VVA@9!H MX ,;S8%FJQ3"W7,>HA]\].A"]F'!\F?:&HW/:ZN_3R616N'RQ5)=[I;:G=>8=LYQ" MZ#5WGAE!-&^6 4V<[^Z]%^,673Q,.LMO7>;A@94/Q55 <+\0]W3)I"&.*8V5 M#-,($!)ATRP.6CK879+R%4@R'C CB=L.<"8T:#B$%@FGL3#&ZWKOM<7%]JBT MS6MC MJBYW?+&VDX.,SLO9]"+=_>Q[G[GY9/&AN"BF7VK6?^0@JJ9A:E6,22S\^N(K MLKD806$,=#M'R"L*H@+'/=#&4(P-%LY)"3;< D)%][,=0P=16XOMN..YQZ S M9!!U5$F\@GIEPJJAA*2(!&@(Q0U,FLLA"TC'3.)M*?MCDWB/0^M'2,G$,*!G M-,$2.\6<$LAL.99A.S+.6&Q\@1Z;F]D-MW\&C1E5_';\BG(:!7EN-Q[,V]W5 M)0O;9@^!1@R'S0FRECID-AQ"H^"02TRL5-W60GM^H4X,C%[O>62"-4':(1"0 MD_6.6"G=\$E9CRL)3GL>.9JYT1&HUWOBE'%;.Z0AD%P)QQ@C?,NGM.KU'1(Z M7H)''#WMAM:/JQVOQ98XJ5*<2!F2G4?V0FL'+%/""E1?CJHV674UOQATC[N? MY#QR:^D=>1[Y.)12!G+[5!K##A$H**((><0 \5S:#1\;X.'LA M"C8I)1ROY%1]&"WLIJBQ#!)L&,0$;GDB8,07&/414*O:4]V@^3'$/JIU?A32 MCA3R/\NKJV*Q/'@X=W?C#&"/J0N+6%C&A-"TKK764.H!&M%R' GQ,C(D@_ET M9K/R:QZL!5\&GE>?EY>KV7.'A%E5U8&[EH\9)S..B_KX*H">.@2#[8$;+# , MQN]XU"-YO"HE<*_YP+8 4FM)!,/U^\>)IIM;RP.GE/#NV7K)KGI(IB(1<4J: MX+$_Z6#RI:B6TT7XR)2+9>*\CKVD_%:6DZ_3V>S460\-'6MG3"OX2'#IZ'Z4$K#CAZ91WKX4!8D?^/@W(PH2P8-99A0''DO\" @*AHPD'K7Y[RW8 M5B>_CT/G=9S]U41;#$ "&L<6-/"\H8GK^BK//G=6DZM#@%W0^C'D/[HO !C M$7H782<]^0T1)\!!Y8RO"ZZC^K#[AF#.M7TU)[]; __\Y/=Q$(SA%+'DGC ! MK66"B6#2X*T9PQE@W6-M Y_\[BJSHR$8RSD;*JE%@IM IB5*4R I:Z@6V(_H M'KVX@HL,3&=QOEO53WM_>58C6Q]P,&LS?)Z@4 H(: 8 3L-E& M\/#->.;,>%NAB( ,Y0!KF&ZQ@<]4F(FQLBCHLJYJ5;%^=79]$LQJ<]7G=2!]7:^S.=7T[!];$-*>O7W M-7O%&INGI+7Q;;7IG@D'-:=,^OH210\E4&:3N@"\I:I51"FUNVL/(^T]8(<& MR;R75@!B!914,&H_-C#2>ZX43V>X#O9G6S5VC? MMU M,PYRO:7=>$&'O.-N"+GUX'VH/?*>M5W?W>=>S?+%KE3@#J-DDEO/!34^0.JH M(4 )UN @I!DRA60L]E!Z&$>@3@_TUXE]!\^:'#E2!B"5TG))(%-, M +*1QB.32KZ]=D5$]'\T;50VXVM6L-,HUJ+%P>-/3YMF3C!",0B6 M@300$QH,,MAP9-F@:3 MOUH,]O3) K2"^ MKBJ(PIX06<)XLQ>T#*GNT<;HE<2'5HEXJ VE'>_*^45YOPPV'E MV-TI6%^>:DD]]PYI*)UU;,NE][K[=!&]5OG0NA$-M*%48YWQ\@R20[JQIU=F M.*58"H % -1YXA3FV]61@NX.M.@5T(=6CGBH)*P8BS 7D<:MJ=**5PO?M[4Q1=A)D_ U)%))X8'6@D-O*35;@HF0@Q95Z),7W!KX MYTGXQT$P@B1\ 01SVM7_*P$49D*9AF"*>]Q=/7 2?E>9'0U!RDGUV*N\*(;$ M"\\<8]XP0JF36Z:1]MT+70Z$-OD)W+A M1^0_B2N^R,"&VZ9X%A;,&:F"5"9L]A162C>O04TY& M6+HV:29N LQ.KRV+=\6^:C?[.V8PO!<$F?!J60LLM51#MX42V.Y&UBFB,2DU MI -:)SP+,O\2YM:RNCOAR8_W7^=%57NJ'TK +-1\XE?S]34Z^>R^4-#%P8MS MTK]Z@C@H3*^'B,[M#&]CW= MXW']KDVF@;":(V>E0P8R!I1K*GL9[?B0)=&.\K+V%%\9!X^4.[XM77N=9T]: M94AJ2TG8[2A)D:2:" "W]%LYXC,;'>7PDB1[8?'Z9#HZ-^CPHHRTB__/AQ<3@L!3=TV8I-H-ZJ0_OU3LC6\9"H+-T5'53 MKJK+8$D:9<_.S'XIO=PZH_6E[E8 PQUP0'@L3+-$6*AL]YD^\8VB3,SVAO6%XA> M(M.__G%85-M&F55, J.I#G:6Q4Q*L;V3*OP@W8,%21R6T434%8!>HOFMJ&[R M^=UO-Y__SV$1/6N<.4N%=!"&25JYH#62NNU[SSSJ[EN.GG\5551]@>@E,EO\ M7GR;7I0??[7%AU_/PK_FUS]:S(7[^F483>SJ4D/CR96* M*LB(F/22J;KXQVJZ6&/7"^$&?7>>'[@+XHA1,ED?O4" $U\'AX MG2Y8UOP\19#LO,XZJ99WY[/ZZ_G$A>5M??#KU"&QG82=M8B-'>Z<42L=J<\Q M,5;7M<34TT-I,06ZLSI:5*Q&%V9K7QLM, 6U];:V855= 981L664P2&5HN,A MAEB2?+$RVG'PI(S,'%=5BRB+PQ8%* N)<49HB'1#-T1PI#<%=\1^1WFM;AB\ M'AF.+JHVG.B&$]GQE=$XIQPS#X'"/M"MJ&RL7>BYEB.RW#NCOK,RVG&\)Y7; MT971J"$$.D A0)A9)SEH+@Q#0'O0/=,H>66T3G+KP?M0N^Z=*_O#'>%=]@6/ M;AC7& A'4# @"34(6Z0P:_@6O$?BPF"5T");/^G .[G2U'0?K$35HG?&), > M6"R@U (CA+W?OBQ84#E.VRJ)9-MJ36_T_GFT9U16W6M1FM,HBU]500JKJJ@S MS:??ZM\.UY;8W2E83X89()2!4! K%&=@$UA"]9UW([H(*HGLGIZ.B 744.I@ MRIO;U;*HMB <+E#T-T]V3B:E(L1!:2@M M^*.XGE[,6DP$WS?,?!TU(U9!BAEE4G,KM]P0U2-),UF-LI0R[P7.4*)N_Z(_ M55UL@.9&!IY 0 <0@K1Z4%W4?:9/5GTLI;#[H=,Y5/]L7CF?E MF<2:$BZ\=(Y30@A60#2T(T^[3]W):H>ED&Q\I%+ZBN*5A.)0(F6T X!*Y@Q7 M@&^R%P)FU'4O#C982:@$T918<"55@6@E@1!#A!*MJ<0"4TD$85N>#/)JG-Z! M2')J51NH&T(_AO1'M;L?D]"["#MM02CEN#:AKP\+%:C/@YG&Y SDBA%MQB,! M_T)!J*,@&$!F!V]EUAX9*J22& 4^%:GOTMP03) ;\F*3D\CL: A23JK'%H3B MQC@,$*,HF!5<:J0%:2AGL$=ZTL %H8X57D\@.F]_8E^LS1%' #B)J.' &\-( MLT7 'KON9P0&+@AUK/@B W/R0$>K>E M>F>..&"8$*ZNB.6PU]N$>X2-D=TG MX^&]V6>]$P_C W9R1=E?"6I?MTS 8$AH EA]6Y['0D (&DX%I=TK)P_OWTZH M&L M?KVXKUY_4@H719#8=4#LT24L)R1HLRA^*&[+JO[\A*2LO4W)GKPL+_YZ?[N^ MW&* 1[RK7X?E]$MQZF,6'Z_SJM#YHIC4KMEBOLCOI\^JSB6[C^8_-#G/[^J/ MU->\FIRU.(;1?_!,$D\84&%B ]!X[B'=%+P3VFO@6FVY4Q_3.,CF8A>?[<]Q M]'Q&YIDWTA"&,25>8&@Y\AL<'6>#UGO9>]!C2)79>1!D6+"'/"ERM);?6/)WPQ@/L_ZAN/(1'%4_Z M 33V1(E$-[>S\JXH'NT:#J<4[>J3*64$=AXJQ:U%2BGGMCPJXT<4N1J'J)]F M(T4"MK-C?LWIY\-F\>>G8*P_7:C96J3%Y%.IBWF0X[(&9HW<^_E]D_>KY6*9 MSR=APQUP>[M8K$+K0-/BNIQ--L45=L4 QD%=ALWZQ@P(M-)<6.&XO?>V"0.$ M&_3<;T"&]1&Z *.^W8[K=:- X/3OZ9O6ZIOK.=D& N @2#6,VZ5 M#>AQM\62B!&FN9]:A4\$?=I8TNKSHOC'*I#KZKM#DGGAGSQF/)[X[PEKY5_? MT24#S%++-;(&82PYU9+<9_R(,$MYV2KC?! N#SK 7VB>2:$M0@!QK9G 6$-L M-[XU0)DCK4HW#>++[BV>I^]^?S1&[6S6JT7 :+%X5&3S@-MY1X_,44B!A1 0 MA(264A& &U @4Z.](:2?A,L4X QEN[Q$;?UK51SVLQWLFPD4WC"M &/4&$I@ M8'KC<0+,:P3&[>_M+&T^ M IL[E@*MP)-!ZV:UVV)$Q+]%)>3C\.DLRTY7U4@&B:HW)$HX1I#2?%- *M"& M">QN[B7S<"2272]Y^ MLF0HO>GO.!P$N<%.']T'-1:?R@VA#7?%XK>J7.RM_WF@:Z:I)D [YJEQG%@F MS>;:=@$$I7!$!5^3Z4IDC#KO%=>7WC]2V'=AX[H(Q.V(&!SLDR&BH"$*$ZX8 M"GLG0 C9TMWG+IUT8<98LHT-SM!+B"EO/D_G^?VM6\'F"K"O__A4Y?/%95&% MR0JV6#C:#)-96A^I0U1!(*3CZP/7#1+"]$BH2%:'*]ERD0"O@R'DS'!E;"TR,#$Y M,3(S,5]L86(N>&ULY+UK<]PXMBWX_?X*3I^)N=T1;-_^1?7SKT?+F\;[8;#U2%?FV6'I?5]L[[V_+HO[#NZW*>^]O9?7'ZDO^ MYDWW2U[[Q7JU^>.?FS^N\[KPOM6K?ZYO[HK[_&UYDV];VW?;[<,___SSUZ]? M?_IV7:U_*JO//X>^#W[>_=;)GVB^>S/\V)OFHS=!^ 8$/WVKEW_RA(>;NK4M M863X\6\O?OXK:'\Z0 C]W/[K[D?KU;$?%(\-?OZ/7]]^:OU\L]K4VWQS4_SI MW_^'YW5T5.6Z^%C<>LW?OWV\/(D._=S\Q,^;XG/#]X>B6I7+3]N\VK[-KXNU M@-$^[:XJ;H\_8EU53Y[0,(0:AH*D8>B?7GGP]OM#\6]_JE?W#VM!S\\&^#4 M;U^"=86N)>&=#L@Q5I\_T#+>*]%U"[N(7S[2,N;N16.;I8OW]_EC+6.W"]GI MFU%N\[7E-^/%(T]B7C<_]59\U?]@\_01^6V-]Z)Z\.#BV[;8+(ME*YI/'NVM MEO_V)_'5XK%^\SG/'Q:_E.7RZVJ]QIOEY48H[>?5];K =5UL:[JJ;]9E_5@5 M^+K>5OG-=I&&G"! ,:!!2F$ 4,HS&H4I0V'HIRQ9M$86Q>;-;Y\&2.U'+HW^ M286KEZU0%77Y6-UT(4R@;2)XY\"_#SB]?+/T]DB]#JJWQ^K]/J#]?__UY[W7 M3^@O;XZ]3RW&V[R^;H'V! G ?JY6&_KX9,WS2=O_*"/SO^DQ>3S%BEO'+=( M1_"ZR57*JG_/G[R.N+KQRFI95"*'&GXIKVY>:O5_FMB1Z6W;D^$U)$N.T#SREMO '>R2]HG44[_IN)/3>V. M4>?]?I4WBM?@\UJ $PO<"%4CU(Q^W]^2O+[C MZ_)KO=-"% <9"W!&*1"2&, PPVEK$BI^SQ(]NIQ!"Y,?6A*K^L1+*???^M+D3N\?ZAJ/+M M:O,9WVQ77U;;57$ A&"&0>A' :=QZM, P60 PK(D5DD"')AWG!NTO>^V[7WM MC%LY0/7R'5:U7,%%$\BIW9G95]- ;:3O@&N=_W=^W.#V%MM_N+M0'M[U&?3 M1W5B1U3382O-0TM=.EA.]L:KZ:Y <+O:OBWK>D$YP5$61BD 20P0)I '@P%* M$ZBBIPJ/=:R337==;6[*^T)-#56(D5,Y1YRHJ]=E2X?WYP;*7RZ:;]>/S6*/ M]Z&LFG48#V^WU>KZ<=N.EK:E]T[TGW*S%>;6S8]=;D0[%/5V6BW;TS>B41H< MST-[=("7QN^7FE;@Y7\]UMLF+ZRORH]%X]EJ78@WJGNA&LM7I:JL@2#C'*9I MG)$0 YS$E,4]U)# +%11G;, =*Q?!SXU7;$:O/(V.V%K/F^^NVFRDH>#K.18 M3OC/:C)XGC:7$]39-[>:-#]KZ9U#W@O-;O[Y1TE!73322 XZSLQCU!R7@K* M&?51M?!&BP>AKJNV%&41!QAGF*$X"A(>^2''" TF1 ;NJX0EI0<[#B>'6)I) M/!$N!-';[Q?>@_BY;;LX6/S]FGA/5',?N^;T=$_6A/O;Y\OBRYHR!,8!Q&G 04!]3GUAY0;)"$, ME/)8,U.N,](#=(V$K/:U!'D+4#'#-.15,E>?6YJ!=9%F0DB $4008YI M.AACE"JMGFB:<*Q3>T!>\>VAV-2*,X"ZQ$D*DGO.%(6H >0=D-9#FEA_CM(R MICMF/,Y$;PR=>*XS-CB1U9=?\M6F&<:]WWS*FS*,#_V(XD,SGF##4&+AIVD" M4Q\2% "?"Y'#?%@V!I!';/&B\OCURDL[EJ6ZU&L5UZ]VKS\W:/_BK05>3T3Z M.N]JDX;QE\G RU8+R G7E*SK%;H*@,-$F6":KNJ'LEX-^=4 UVOQ>NQ5RMV4 MNDJ1.%;C:K<5YB&#MIUZ7M7J@C.%A=8OJV:'%2\K6CY>;V\?U_CFIGS(SS.(0IE1\'PXF4P"4%D&,##E.R;)\Z2V+:\V$S(Q"Z47::=A33,YZ M",VJ0+'ZTBS,7C2;[Y:KK=>\TA[K"/7^_+%H=O+EZ[],OCI[DK?Q]5ISNN;FF:XL?^6GPVZ*JFBGX9H+^*O]6U'BS%']WKUN]@)B2##.?Q-PGB 0@ M CM]S#!(U:;TYGR[O\.U66O-OJI/BIFS*3I1/2*3JY'G/8;^&V8)K\UWQ M52]B$X\R7V-K=*;=$M'S4"U[[KR8D;?*D]XL/16Y1K-AJ='+#U5QOWJ\7\09 MAQ' ":2ICQFG. AW=A%GD?Y$O8XUUW/U-S=5T0U]-MZFW(J.]Y!_;]('DTEZ M+5IUYNE=,VHV5=^@\P9XWI][@!,G7J\2)CUG;T+V/,3,HC^C,_?F3,G*F5#/ MJLCK@A;=WP=U$21_6&WS]:XH@@,017$<,T $A"3E890- 'S$@8JN633K6.#( MG?A.J-IJX]T\BGC3E#!T&YJ;!&.]RJ]7:YVZ-YO$RRG?F3A7D\ !I/?G >9? M&NKW%6<]U+.5F\FS.**+#IIB'@+IPK'2^6ML*IG#@'D_=[((4AY$E%!?I)XL M%8DH\H?-%!$-@D1C-<**W6G6(G:S2=4.F:DZZG"LJXNN>+6IB$\9\Z0O>Y>:+2(3*2J0]"P@ ]R$+ XA1"I*,,C:(;(0Q M@U:43L7@-!(W(/I^T6R-,%4W)4)U9JTK":K69YJJX=IU\58H=<&J23^[6< ZR61:$*299"N*(1&E$$QB3P7KJ M^SH5?;9,3Y5C#FO"%@?2FESK)YW.^+6;?AXL'<]G2'V4/<6DU(3_N8JEH5<2 MB:HY:Z_)H5#<]=ALYMOF^[?[!88%@< '.$,(\R@E88@ &]0XSB07EJT;G63Y MI>FA^[,&UFW_/5AZD9-$^WR/:^)9J387QUY M+):'8% 4HH"2*,QHPA.8^)C# 4R41=RL!, *!/?U3MVR2U_EU Z^\PZF>DAR MW1RF"V"3M83=);$/!VW3 ]<13M?K9&/L:JV<66FNN:;\=IV47EVSR*F1.#>F M#T8E/:P%QRP%40!)&N.,)&$81<-1%'&,H-*9BC;M.I;A@YD1K7)3JQ0;J.P$ M[-J?'OGP"N/3R>AQ^E2UT[ 19BR8II[)J*05]NR?XKT0^3)%/LU"GX4L@3Q# MV; 9/09I+)1Q=]&0Q?.C7S6K)(PGKD)ZY?A5J6,:71W=_3KOFNG",>USN!6Y,U3,IA*C/G'Z(<.\O_?@L>O(XK\>K6W]-&H%(QV=J@&LZND.]!S.G54G5EUB M;;32K*76BH-RDFN/2^D3.?+O_;FT^.;OCZNJ>'(>"-XL]T>"1)Q%,6!^E"*? M^V&6@9@/ "BG@4:I@T7K$]6YB[ MHXLNNK.++EK:SW2 D3R)([+JH"7F(:^625?4C;/Q+NB M;CZA_%-/^:R44Y[',>ETT!HST4X7GKT\5LD1>]K)9_98KS9%71>U2)"[>Q?[ M?UDN4.PC 'R41JG/&801\/40Q(%++21?IK8GR8!;>%T!SG6[:ZNIF>WDZEY M#[3MU@:GG-AM%,ULU'E#6,M']T@OVCMJACMA![AGSDA'B%3)26VTQTR4U8EK MK^6E]OC3UM87)ZUG-$HCDN%F?QL5_X,8#E5;27-UA U!538ZC8K2XDNQ+A^Z M2YPK[^%@5&]XD8,%VC4ETPW5UG3RS%^@GV&UE(JMT.U\>FNN: MD)6U(.FFF(^U'D3M#M>2K3;ZY.;[XA).()!S#,$L(0! 0MKM-+!'? M)Q:6VTW,3[?A4[%L5TQWH&:^UCQ"KKJ\V6FG6.FO% M03F]M<>ESF+1Q^*ASY7?W[YMI@;>WY+V3.A%BI+FN!F,@RRC&$3!_GRL%*! M:?^2'8N.U;7IY-4.7'-& MHT>GG*:YHU!+PIYHEM< :H^?GU:LCG$RHDU&%,Y#BLQ<*"V^4OI"\ZY9$!WV M_6"( Y@QEJ8IY# +LBCU!W-9&@-#L5&R-;'@M#W'8'58GU-UQ;'/HP75:4&= M9WOA*6XDU4>+SODID)X;(RIDP(O]&;<%P+$8;L9I3 (4X(A"LEL@27&0< OK M$SIFIUZ?F'**[77.;4^M6:7;^93:7.?1K,R?23?%/)30A6/:\V6*W,FJ96.] M^7]3?O@E7Q?M^?'UMEK=B.2G+9W9+)]^V=Z_ZQ>1&>?_;D%SJGO2.' M>5QX.]>]P7>O<=[KO)\V'DW;LB,Q;::OV#SBXES)*7\(F5"+S]W#W]\>&GR_ M,7)M 4E* 0EC0",? 98$20AZI) BKG0AZ3GP.5XCXV55K#YOO&*0P]7]@Q@8 M-8MEEL+N61I5+K;.O3W5 FCG33.5]#2VB::T%%NGC8\.6FN;9QY3B^Y.!%R*2Q0%$"4\HR5(_@>E00 )C3L\]IC2![GA,N1L/C(TH MO>5CU8P.MG>%]]!Z>/8QIM';<+8QYE0OP@S'F#O7_WN.,4=:=MHQIHU7;!Z1 M=Z[DN!]CVFO#2>+U(F"(,Q:'&0XRB'$(2!P,F*(T31==T/BTS:OM!$'X53PJ M4OH35A0'V]N2:(CU;;Z"SA[@<*6:XB MD'0C_C<(*/*^VHP/B@Q/(_=^G"4@B5GL<^HCBN,TC 9,*3_?R09LLWUWT$RI'VU*AEJ#*M(!E^77]\)XL27^^V3 MF^614@6ZJF_69?U8%?L#-2%.!2+*HSB#/ I)B@8E0Y$?A2I+#L[!.%Y?^/3X M\+!N=]CD:Z^^N2N6C]VA89MR\Z:;AM$LPW+?3/+)X6Q:2#T_]!KL%UZ/_F ; M>:/R1_=![ETXVY9(4\Y?T?Q)FG,^LC^-NT>4?T*>I0MJFYK=R[I^+);!(FNV M:V8\HVE*,!71!H5#%1K*L(^5-J>K/-BQ*+\[+-/W5BTH[[:LNJ/>^D/@%(MB ME7B3+'MU19EB86O+5H=CXHK5 P+&:E)U>)J'_.A!?UY7JN^_U#7%O425U8>\ MVO;?'!R7V&PTXH* U9=BLTC$$#8C8<19$M(D97ZTVW"$>(B(]#7%-HVZKR%I M<11UNY%E*:#MU:0Y.%)D?ZKWYEKE?%QNSDJWJA1U69H@M\&YR]H.D%ZT.Q>] M >RY*%>XJOA2N*E:@YTB,<,;P#*XJ=N)6Z?C-5$M'#X?/0\9\ MN1'B>M^^M;MDV,\2C.(PX0D*0)A@YB=DEPP#JG2VARV;4\XLM%VP.4C)6^V1 MJF6PUJB62V[/P;):L'E"\&ZJP#L >;;QOR1Y(SFS;?KGD4Y;]ZIT^](J7PV\ MOVASM7Q7;!=)E 5)'(49,3;">W=.[6K8'IT]^4^\S0D9$R("]>>B-B0,OK] M141/+.KM8,6/?)^GG 992##-?!3%0UDPAB",U21$[=D3ZT<'3E4[%.F2%0YW M3*FJ1H>D5XS]#D&2/ZQ$G%O]HV@*/;L?NIC!M;;/J!O5%SV2YR(NFNA?*(L) M"[*RLE^A>']+RON'8E.W.=''8MTEM_NLNKXCJOB^5PGODN8PK#U #\O#5=64A+9?GVND84;H M2-^W[:FL\;T(;B#M[[.ON]_IH>'O^;5\JH] M4H@GG" 2)0#$$8<@H&G(!WQI0I3J3*9#Y7I:Z*#&Y%!4#ITY5):Z.:;FJ/HT M+GF_MTZ=%IUS-['D9-,L6U?&B?X]H6%$P_3HFH<.:6(O;;PPBIFHMDKMT6V6S9VN M[_+[@I;W^6JS@!F,4( RAD3VS" 2.%D/E8ML6JH YJP )U2G#I%J8/IJ^5I;NL_GFH=[GI>!Y0GG^]I ^NNO^85U^+XI/V_+F MC_MUE?Z2I+.J03Z^U)QD9$TYSE>2B?!3^>'^)DB1EK^>PIM7R[VA27 MV^*^7J"(1XF/ 8S]@/"4!W&P Y;Y3$FL)H#C>BY58IKME5FVQA>O=<9VFFNA M,2TEM=.VH[[>.FS"\V2_KQ)ODNO::]5YZ/N4#JOFL;:YEMK6LU_Y&T=U_1Q5 M^VF-UVV+%LNK,BLVQ>UJVR3:K0OO-]V/O'_WV,4+B0Q8$TCN&?A!_',>L7_-OJ_O'>V_S MV&0:S6)1/CC6;FF^SY>%EW_)5^MV\^.V]*YW6R#KUDLO%_\UI_\U[BCLG_E! M^)?9#?6#N'+FL)F-A,V+[I]J;\>%=U5Z/1M>0X?7\N&]WPP_>4"))SCI=YQ> M>#M:O __;=])A>UB/XA+*N^FWDZT'_,=E=OT-H]&/I(^S@B=]"LX@ZUZ/QIC MY8\K.!IS)CK.L6\/JZK]X>YDSP7F49:A!#.0(1! G/E^.N!+49(H3YU,@FJB M;%3\ZGUS\/0^*VU.25/(&FV# S>].="GV&:Q$8KO#9; M,FE+SVC29%J_C\V=G(%YYY/N7>CK@MWE@!$ Z ,?1I0G*<54H$K9#F,$U4J: M)T7F.)"\VP6.NEE-\9B[^+&)+-WOQEXFFV?6:S_&,N_.6FSRV]..N MSJ4F@SA;A+'5'B[FY(W:?4:19GK?;RWH-^)Q1^FOBQ;$\V)@5>:EJ5'%W$$]K M?!#-[[_FV\=*_/T,21:QD&5Q%D*! U+(0Q[M4O,0*9WRY,+^A!+7(VRNJZ9E/]3!O^*,P6OXJ,Z?[Q_F,SS%D/Y^KPLGJ*M7Z&+02441*@ M)(MY&A'"^&[Z!+"4*VGT-(@F5.W.#:_WHQ?KP1'OMXUXKYNSR-_<-!,AZU8T MG@F,:K7!-&TJN2(TN^947 DZW9*=#_NF;(YJ?-YR9P\#5O@?6_F9M'WG$2HF M]OGD8373,2X;3CY4I;"Z_=X4RFWQ9MG<^??0+C4-,^U(!"^2A33QLRQ+?2*B M6&<7$01#)%O 9&[(G60,V"[:2MQM.^>PPW>VY:%7&1OIY/;8GD<'MNA/Z>J] MM-3Q]CT>AP0E/L,P8#&!61@CA@;# *D=.FC!W$096#M4'NV1:LF5#:(-)RXLFI^Q2,V3'H3/O^F\:Q M2%0B/R, AB - AKN3%(24:V+6G0,.4X8+M^1][\R[PK_!_ND>4F+%GW:8N2& M.2MJ=+; /T:3FB"ILSM;1=)PY75)TN5'^LC;FW:-?K7Y_*%#F-@P6&EU@Z4-Z Z6W _3=!(5[+ ZCPZD@U' MGA\-:XL;^<#^1>3B9?7]K_GZL;] H2ZJ+T6]R(#/?9&"^QE&*:>B!^/^BJ80 M,2@&J9OB<[OW526Z:UN3ZE"HZU O@"E$JQZ@5W7 5..\/INR4=XM@YHQ?F!M MA\H;8$T=W4_1,QK;C3F=AR#9<.1%7+?$C?1=2\7U]LBP)O AHR$(D!]Q OU& M"6F70C"?)S22O4-)[^GNNDY[F_0,ANG'B1GI-(9,SJ/#F#KQ_$XB&YQ(5\J5 MF\]-P6IC=%_V];%XZ-?WWM]^J%:;F]5#OK[IPDF?IJQ 9/X6NDH=[=(' _J0S_T%8OAW!(O)V3SX5Q-[QK<;]H3 M,QKD%P<%BQ?>'GVW(M/C;W;&-AYXG0M>Y\/$I7(F=(\5S4W2C/,0VXE\?5Y( M-R'#3J3[/XN\NOI:+L((1# FL4BU$/9!@G@2]E "#%-WBBT+P+U0!PZ%6IIF M!_KL@N%)9+D!+F2YG+$8]]S:TF#5IOH!I5?911/%U>/3G="*][18P)!!CIF/ M<91P'H LB:,!#&!<:4'+$03W8ANZ%ELYJEW)K766)Q3-A5>#4V?2RT5761!(0IQE- C"A- @PQE Q8_09%3Y95"X%YX@6/A ME2/:D>Y:YW@ZV6V@SUQU&X@V15>IM7Y0S57ST51R-1AUI[BK+\7"#T 2A6&4 M<>HCQ&)(LF3 G&H=@:$$P3N%3=RK;A21+M27-L<3ZBXJY$%^)DHKH!H57%5 M6NM'55PE'XT55YU1!XJ+;T4?V,,)$P8@(]C/8 1PC). [V8[0@PZ M>W575$7>('*FOHJD6Q=@=WR[U^"V97X &7["L1TEUFNV'TZ,-=W4UV,37G4D M>4$191BG0OFS@ 01!1%!O8D01X@OMN4V7ZO+[*L/5I+.'0;-_JPOGZ\3I"Z) M5KDQD;GS*9:D"DDS-3]ED8<^HA:*_DN?5[/-M^UQUN]ONTT)>-,>>%T5=\6F M%LK3?[JKJXY"EL"(<))F8CP>-9>F=V6,*6,QD5WPM6W673?9(6T"_A.(7K]9 MYUQ%B(HD>L)VV\> M"CZEP^79^HKR 36WJVT#8Y&D8@ (":9)S!!.,I!0V!O@/(-D\:6HKDN%HVAD M'ZS2RP\Q2'?VIB>_HK6NSCOI.1CIAAI$S:,[Z0!_>4Z)GN\VTAA>5L7J\X8\ M5E6QN?E^5>6;6G2TYGJ>S;+];MU=UK/\K\=ZVV1D0T]=H#3BM)G=)@#R(( D MA'P FT(_M97:.(3H.-WID7LW/71ONT=K+^%QV83F2=!,6L]Z8C2T[>"8=^!9 M>^+4@6_>WKG#C&H^:91^(VFF5A.\%?.(#^_-6YXSUT_GCY@4/>MO0VS0'1>Y_$;W1. MJ86XR5M;+K;-N:'5@IKD./_"V_GE]8YY^%F+/_7-NWRMP9T$-,LM,Q+)SO4. MS".$G_TL3/ M7DKE/9&7145V+$B;%WP++T48XB85M50[G&5G27 ME0#173W+5YO5ME@+N,M%1L(D W&0P#1&"$=AU.\^0B#T6:)V7+,EFXX%?@^S M$8;5#JB7MT@OO.+;,-C^7);+KZOU6O'@1UOKAGO(/Y MIL4Y\1F1AIM:]>GZ4I!/6-,I"A;%\<[/*UQ_*>M5.5 R%#6$$ MPY"%,6%^PG@:0.KWF3J*DR"6W2)BQ=9$!: [@-Z < [EGR=IDZOY-&=]'EW2 MKDNGJSMM\25?ZE/<%E55+#\U,T\?\NI]U:)9-J?,%A^*ZM-=7A4+YC.4Q2Q% M"#$.40H 2@;C<9HBM?NHK)ATG*CL4'9S0UYY7QJ$WI]7&V\I$LF\JKV' MHO+J!N]?5*^FLL.[G R>@7(U(=RS_:EC6V 4G=KK4+:'61>>P.FU0**+:6:ORXO2NKU3]$6A3'G'&0L2P+(8)9&.!P M;S13.ZC!T-2T(M@I7>WE.X"M%G:?&@F@.L47D/!Z[!Y>W#G%+GG1$F+ MFS;#F2KW".UJE1+-^H+EBF$[ MJG6 [OS2=0!&4;]T2)ZOB&EY(Z%D^BPI5(#XYEK8/H9O+,"MW2A1F3,JU5A!"Q)*8< MTYVU*,R4%C5U;9Q!GDPGP+3IU)0E!TR:2]+%62:^3G"CHD6*;,Y4AU2]>$V# MM%C1UI_# 6D8(Y(E?H@0B*D?T33$PX TI:%:#:B1H3,HD94Y+C-V-37)%;$V MA.EL$RM]?J1/R'DHJGPKGO^V.6V*?7LH-G6Q\-/0 M!X0QDF$0^##$4AJK"(?&XQTK1XNH.T;?(!_1H4U./!PSIJ8>!V2=33]>$C(B M( ;LS4-!3!QXO@'&E N]@T;W M9OE1V,C7PV@JBT$J1"U-$Q1F-.&<<##8P@%7N]]3R\+$&M.E5\VV:"C3\6 M0A@"",+89Y V(Y[03W?F@RP)5;(#:T8=)PP?V5_9N]^86FY@CU$KJN>&3 >R MUP#U6J3S$KX=@?K*I]X&/X3T:;BEIGVZO"G<(R1RV^WW#^)MW8JPA8(RA'T=Q0((8^I!',>FNK$.$8*HV/+)JV+$(?OCX_@/[ M>/6?'GY'/?:_?[O\\"M[=W7AO6-7JIN];+(M)XYG(UI-( >8%UX+M+V/9 ?5 MVV,]HTJJ,#FBE$X:9!YJZ<:UEY=/N>+O-=440\7U(GNL5YNBKDEY?[W:M/>+ MU )&>S8;OA%@NE.AZEW:"EF6^1&"V _\-/9]?SC2&(8I"L!K^YS<&'77DP>H MWB%63X#MCC/T#N'*#/6F:(%E>?/8O$+MLV;<$D]PGJU%GJEK0TNKF4'8*Z86 M44-??#S\0B5U)'W;6) M9&'".9M#L6S!>DNXJ6Q09'2L[L%5X\PC2W7GWO.:";<\2F6KST4>?UO5"P() MB@$!*04DBYB/4Q+T=F#H ZEB"OVG.U;.%SF-2&D$+)4$4X\TB33>.5]JTG8V MJA3R;>>4Z>74RM3))L=,1!36M[GJXU(ES%/*4$H M: YA)T*_PW2PA(@OM3!D\OSI!;4#9J(3LM1IB*H#UHQE=3K"#*35 7%ZXCK0 MY=V6UC.FM%AM2BOM!/'=;WZV*]?+M=OEK<7]= M5(N,9S'B4KKKQ:8]I@M/H%*0##VR)!36.4^* M:T7/*/)^[R"IR*L>5PKBZIPS/6E5YTY.3H^Y>TI,C:B9@92:X2]MO20::U9' M9GW;7#F),C].(C\FC1T:^'$\3/@BEB*IH\"L&'(LKKOYN_S8XH?ZZ->85X6E MORDHU5SI.[J4= 8V-9;QIF#5<-5.BUVU-;H3++RV)&=*W@RTW)HKQQ;<[/!C MJO!]=AXBP.,TIIAD-$PC!OQ=6$$!"J6V\%LR-97*G^@YZH-Q"^R:*;T#8NUJ M_5DXM:/W#KBU,.UQ9OD?GPZQQ^:\0X"J,Y)!0(LCJ3#PJ:A6X@6[76V6JR^K MY6.^7G^_O+_/A8JN\O4(I+H??$0-)A(2% 9^BJ#/8X@&3"EA\E'".1+'043T M%OADF5]!VMRW@D0TF54#J 6;#GIW_?0>O+='_XHZUCHS0NX;32%,X"5+"0P8Y MQ&$6!E$XF/1]1%2*%HT,33;(.LQ*&WA>BT^Q$-&,T_%P.#F=ND,K52:=%!*. ML312-&B%W'D4"-IQI73P\ID4_@W%W30.J!_'G$,4< QA&K/^Z+<0BT^DSH@U MLS#Q"NI/)N5LTJQ)9.23$*:F/<]6 EK;1G/):NBI0 ME:499)OF/HQ6!^HQ(EFOTAU;QV@M5.8>=LK\CTZI?H, R(EM'@J#M7D>$*UEQ+=.B05=U75;?O8V 99#IJ7&GD20[H\TP4;[P6F1>#VTR M"@T29F=46DJ:92G52YP/O9=-GK48FX%"V_%C+(DV8$9OJTUQO26Y\'R][M[\ MC 91 M0[.=4FBLVPTZ[Q#>I'2:[,]Q2:LU#9>G5W.CSC,69+5,P8 MTM)U4F[JU;(]7KG<7%7YIKXMJJI8+D(89#YH;"9 V&5)&@QY?P92(O2]W.9K M#7W7MJBD\SMPBEWI8+;$>ZA6-R:)I3ZW&IH_":W&VO\$I7< \RPT&\2"2>BV M%A/4:=>+#:=8D8T1QJS.,%:8^S06,RPQIA<[\OHN[PX _)*OV]LB DX2G(J@ M!6,819CQC Y3^EE"H/[BIH8MQ^."!I&):FF0IQ,6W/)F'A $OMUAHSW"B5DU MB0)NV;6G_RHL:TK_"RJD15^?Q#G*O8$WHT)ORI*>Q#]6S1TU[,4<)PE?+@62(Q30)SH"[VN1<=RCV]NRL=F+:O:83+1*6U> M=6+ %)2:1X(.9;=.V%[QLP-Z%J)-PL(4A-L+#AK$:\:($[Q(1PI37N<8+XQ] M&HT:=AC3BAV7FR_"=%E]7R0)Y]P',8\"Q&B,$8BBP1A)N?X!7?(F'$>''1 # MJ5+@2R,(N*'*6/4G)LY U-T0:$W%7R=23[-WSY45:76>9JC*&DZ,R; N)^8Y M^X>J>,A7R_Z6/;Q9OM_>%5V53[U 689\@%B0!4% PR@EV;!N3+*4&1L\*#=7A9&%&/L:0TQK#3'#*.; R>E!R$6.=6*CB>O+UH@%&4T38(8 MQ@%+ YZDC [&,0?Z4UKZ)MV7H;; VJA7#*@,)-6 7(T0-PVOQB'MV=5J%ZTF MLO.R;1"PIF'=6H#29%\O')WD1C;\F),[PW!CP:FQ\&*+,ZUP^>WK%2K$S5#:=9P8DR*=3G1.U&A^;(JEA_RK1"S M3;V(@B C"4P1S3!A,$EPA >;/*-2]]79L>1\+;K#XSWT@$R."E!F44.6G1)H MK,X[.C^<@TZ3$QA4#_&(4IB'J8$IXSQ&)"=X2#4WVVF9\YU:6D/RJL.41E- M=6N1JK7LX)I/"TL,/;L?S\NNT:*!:Y8M+A HL:V[#'"$#_DI?Q,R9Q@,#!T: MG\HWYTKVF,=?RG+Y=;5>+](8L2@@F8\A0AG&84:'-7,:15SI2$?IASJ6^ &' MVBF-\I2,2[=3-M0$^E4BG!RR.%@]HA':W,SC\$1UV*7A.V%>JO)VE5^OUN*3 MHA[*K(>C#4 *> 89)!A3'Z6AL#]^$-YZC\]HXE237ZWI:(?$VIN5[NA](GLM MSG.P;#1+[9YMBY/5RJSKSEH?945^\MJ,U!E&$V.7QJ>R;?"E%SG:VL9A+CW? M'((0_R;>V^6[8KM ?@PX"#F.(AQ!SA @0^TCS7"@7S]BR;[KXI+FQ!YOTQS! MT^+M3N(Q.QG&%O,Z(69ZTLTC3D?\;KVNJ0H]@.WUN"\\@7P&K6(2DJ9O'7L1 MRD8K:<8L*=JD0YC=1IAC1+/LX6B <\&FTM6WI+R_7FW:]SL_'9&NVG7"GNJ]+T? M'+FA<($IB8(P"0E"6W!%S/739FV==MAV% MF5\>8ZLU)$+6>1M"+6H]N1GEJ&P>O9/UO&V@=R_-&=K"PFTU%MI$^1H;.:9. MA3!WE,\@BCET[L1%.$XXU!U/';'\Y *( /"$)AAEA-(49A1';#CLE04P829C M*E/;KJ.9]E4Z+GC6&UE-2;&%T=51&=2_C\=%.YB-LJ9L#XLC+:-VT1YMO4*6 MPHC+%NTSB%ZH>6BVQ:S/$YO6=^+CYZ_ Z% 8BF+(8H!0C\7\.L1_L0CZ%MB=!-5$X M'E0JWDKEEG![ =,]UP[#97/Y4O-O[1=Z]URY;2?[P=)]>TT0*I7;S6JH/$JA M8: T:Y8?)TP:^JD1)&TP:S-$GKKW)8!)C$ 0I!1'$/,49 CVB#B@ ;0=)'5Q M. Z39K=YN6X#>W%S"OH=1DXK5X*Y;BW[T7.*5IL@?CJ[5\R,1L,8:MHX/TX4 M-?94(X[:8==B)-U?W1-G48!(R"B"8120&!$^;#+GG$&I8XB<&'8<*W6NZ++. MK;60Z(96=S%P%NQ;#W%N6L%]3+-URYHB2V8A2YWL'R9&:;BF'I1T^7,UGGMZ MA4[^] J=S(< 4BI"(HC%R#,B8#TX$;-[[YPWA+6 /TT; MN OPUB[/<]YDUL/W-$WG/EP[O8'/D$JS8&S>0C],\+7@JGJPM<6OQ>"ZO^$J MB^(X"9(8Q'&*4Q!"E@[[:#CB.+4<3.4-.PZ>6K< 6B?76H!TPZN[@*AUE:!U M^JT'.S?-X#ZX6;N/4)$FL\"ESO8/$Z@T7%,/3+K\60Q$[9>'=W,A&B,"88R; M (A@S'W !R1$_)OE>*1LWWE%S]^U[T1TQ;BU(.64;'>Q:MXY_^L?92F:V?6/TK!/7?^HYK?]6K>7UWT- M)UA1$'$!(@[2!.$H"&ES<'"/##, ABNWKEQ4NNG#DNI+3Z_ENC+8V:1^9>14 MS6.[FLUQDTQ6Q';L@D-GYRF:-Z.K>K5IFG.Z,C6M9G50FG:25RL5:>:M]@-E MG+8\UJX_L\6VU06)XS>LP103&.& $DRB$+"$ CH HCB$;J*U+III@K2-"S0= MMXK%M0N'+3'!$H:%6S@=-Y6#)0WW33;%RH:CJSR-2#1=Z3!KF1\FQAH[JK/N M88-;FQ&U+20?EF/R4U>ZA1%###**<90FA&2(XF# EZ36"]$LH7)=I;:[3O1Z MD(R; \G(AP,GM>X9G;;Y[$7BZ5O.86#N6F^W?)W;N:QTVJ:U'[FG;^() KF- MIK8:VJ58-HST=EORQPG\EOW6R -<,"^[X//IYJY8/JZ+][^3"0B?K6C3H.ZL]VDK1"L$/H_=YBE+S;TS[?XV'Z MK%2K16$SEIVLU\FR-K*>9YWX>:SWV7>K=/S"RNEA76T7'\5;6>!OJWHAGA-D ME%.:A!3'-(1)!'?/3@(IL5-[HF,E^]2D2_5V=2,&*;\6>?U8%5WO:L!)2I@B M1>/ZY(X=-?'1)$9&=82+!XHCOGNN-D\X."(E>AR=5RYZN-:C^7)4JRISO@R%)? M?XT>N[V]XV&LORLR-9,>KXKZ>9_7\EJFU_^ZVJSN'^_[YZ=IG(*$!SX&7#P; MQX@EP_/3#$GM6U)_JN.>WX.1[^"*G+S>Q=W1H=;)>QS>[QV2"3KU$\]/=&L] M=L[?L35QEZ;OA4+GSK\=/#\F410P/P[\$"24H=1/NB)"'/H9]X%TYU9ZJNO. MW8%1Z-QJG$AT;F=T*';N#L>4G?O0\U.=6XN=&71N/=REZ7NA-D-Y>$U,)5&]E:IEIN7G)IE MBU.2<@0[F9>48&UD2M(FY_.8C;3J4>GN#;6D>(W=;JRZ2) /N$\!#% &01@" MSG=:"Z#-QW5TV!]YJJGXY&L MZFFS):MZ_+':K+:/52&L\M6WYJMZ-VHD"?$A)D$ (PIQFOAA;S 0*::O(G8& M9AQKW Y9V_5N>VQJ:F9"HIR(3<2?FG8]I6Z 96>8J"Q7IQD:42D+M,Y#G&PX M4EI_Y=2DB)3W#X^B!^_$K[>&4Q P' $":.!CG_J$)CMK*)"J?#6UX5B$!EBJ MQQ0;4R>G/E.PIB8].\(.2E;.(CLGJ!G1'%,RYR$XQEZ4=E\Q-:GY:W&WNEGO M](S'(8HCBH,8)'&"LI2BG9$(DU!%810?[5A8!C1J2 MC*<\C"B%)F'S$ A=\*65ET9-#IZ+#B!^EA(D+/EBQ.5'49CAO>B$2B,?U6<[ M%@3%0_6U&9*3!)?DJ&G"N?,(^?Q!E[-YR((V^M+.FZ.P?>]%2O)A739G)?86 M$34BIWF8R(VKE-H:-V_5_*U24W!:5MB M^DM1?J[RA[NF]+1=.$P#%&*2,=^/4<)(BOW^&'<DA@B MC$ H^C^.4C!,+(51R&*5KBKQ.-<+S?DF7^9J?52&!+D^:ME_Q9D9_ Y3/%GG M)'BD[-+P ME5!8N:L$5\2ZRQ34:6F"-W!RGM87H=+9X'%B$"%U96IB-1;6M$F5&Y99<3Y4VLJ M-OB:P8**%3=*R^^1I7U1;U>;XG);W->+F"(604"C)(E]%(.8Q<%@&(BP8&5; ME+PYUROBXR>G-3B]%JBM/5$*1(]+^IDX5A-W"_1.NQ]J1]I(T8Y%QN=1QV/3 M(=G-4+I<&2O=;W5Q^[A^N[HM%BQB/DD@9"G@D $N1K9TL$P(DIH.LFEO,JU[ MV'7&W1X%[['%Z:T%4$M2I\*TH=8Y(MFBV%UX'4;O[1C!TXK=GC4=M=/@?.9R MI^.1K-YILV4L>,W)QS @"T MN"VJJEA>Y=_ZT]NOZVV5WVP728"RB&8T2UG 8H013;J92 A3/P%*&[CL6'0L M6I1Q]O$CH]X5_@\/?_K$KC[]L_J640O$RLG6])PJK@WN\'GEK3<@] 3$X5J* MWP>49]A?^BIS(Y)FE_EY:)MEGX[L1+7-F*S:O; GOA@^8]\>BDU=?"SJHOI2 MU,V5%LU55OFZQNMU^347U/&RHN7C]59DC<,%P0L"24 "+D;,O/F*II"%.Z ! M4=H]?P9XCG5TA\V[+2MO0#?GOS-O.#6Q/B+/%^W7NW_H7;KP M!J?:A'1PZ\+3;74G"F^_;4;"P1E?A'G$CG,24,ZF4RJLR$N@#!. \?*_'NMM M,Q981! PGR$>16)$@,*0$,0&$%#RJ&]'IAU'$X'FS_@OWAZ0PD*T YXEUO?/ M2[$SW1>8O3FUA$*AP'E;1*]\P$W+R-46*/-UJN+ '?$SJ$-PZ%PYR9I!DD;3.!T: MN6V5R0=$+R]1_R$&02]:P?[01[^A?^@!CX';=H8YIKR[#17#1XLP"P@," ,L M9#R@.$@9&$"!E"B=".X8BN.P<+GY(@)Z67T?1&:*N"#?#BZC@9,FF#H&#!__ M",(_?&1=[I5;\D<6>75GK4B[)L=ZLU4'-WZ_*[=%&U>*=A0>IH0B'P<8H1A3 M2&.*H[UUN>/-;=N<('-O@32KG E0[_FM--);J3GF\S9G>-$DP6O1F>8;+&F/5[X;5,5^7KUCV)) M'L4_;&Z^ORW%/]2+-(LQBE.$>(*H#WR?]U>E"_LT"J1N1;1OU7&(V>/RU@*0 MX1A GUO-='\26BW$E0.:!Z!>A_3,Z?LI E4R=>-&F&E2;N[7:_FW)>9,YDZ( M^'ZU)7E5?;\MJZ]YM:P7&"9!%'*29BR,:)P % Z)/DI]J+0_T)9-QSK8'H;4 M=MD.G/EDB!:Q^K,>KCFU-+W1P?2>X#S_#,81\A2G*DSHGZG\F7HE,?E@SIJV M]+U_*"HQ8ME\;A3W*0(:, Z3Q(ME#^ M4@G+"X8#QA(6<1YE?A:1% 7QSAAL9E_+;;[6U$0Y$TKRMT,CW3NOFE_QED,? MW8H^FK?H#-5/DC]-H;-/G05-:T&=6;Q:#"HZI<;D3"5)T8G7U$>'$\.=@@<5 M!/O-.S&*DB#)8DI(&*0\2:)A9A!EG 86M@OJF'67;R^O+IFE MC8-:/,N)U)DH5A.ND2V$!T#GMH_P"(@(>:A>RX95#N#7.08Q^G'OYNEY(9>\&HR,]E5D%,&$!(R&42I" M0 C].(6[,$!09#CLD3RS@H(#W M& =JZ;LZ=;/-S35<>3WQUN5'-:N^W-R4]\53VPL<9REC:9BD24(CR*!/AGV# M&.,DTEEJU#(T_8+C6F(_KP-"U1)BYUS:DO4S+D,>XT@B<36B=E[)J9DK)Q)0 M"_R8#?P7*2 ^0-Q/_92FW"@O!;5Q+4*)[@9E18S-N>B+89>O! 7&ZS( MJLLO9;G\NEJOCUD$(,Y$.@7C >8TY "W%L,$QQAI;LD3.PX5IE?WK^G?[M\ M^U9-:8R(DU.;J3A34YP!U3Q49X2C$>6QP>P\U,>*)Z7]]TY-A9HEW>WW72D5 M8R&/4Y#& 0RCE-(09WTI%4G3%,M&:\6GNNLR'9"S51$^Y6&D6V@2-H^>H N^ MM/+2*%<]WY>;3UO1H_Z:KQ^+10:P#Y(@8DFWQ$TY&=$.;OGDHAS[\E]7")CSHJL?[QVW=%$.M-I\7J1]B2$%*62A&"KZ/ M">[WS1(4)Y2:"8F*I7-H2KG'9R8L2I3J:8PK+BW(S7L)&B?1G ,@"O*CP^P\ ME4C+DU=$29\=67UJ;=V5:T%6W:53S1E/QT83<5PWPSSTSH%?I>L76$T+=^3 MK];W>+-L_LKRNEA^J,KEX\VP53T(HX@$T ^"S&<9#1%*_,%\EH7RAP3;-.HX MJVA0M9NJ;ILOKAM\WD,/4*&@U2K-X_IU5H;5Q*Q%Z>U@7G@MVP)I]T6+U1O MOE9RYIATA8KBQU(*%+DER*:U#?@R%_PS5Q$_) M&,E7-5F;1XJJ"[ZT\N:8*,.GQX>'=5/_AR"/,0D3WM@*LYB1=,AZ*2!R9VT8 MFG"L%!_RFS_RS\TQA4VF6?>H3!1#GCP=Y7#"FZ&"#)AFH"4#%&E-4>9SCMJB M[L2HQFARHCR!]*[8+N(L@C@,LH0!&L1^YOO]&4/"!.9^JK(I2NG!2KJBOK_@ MH'ML1BKB+1"D.*5FFQO-.;0S;!0XI$!FCDR%J7FH@A[T4[-@ZO[+*L"OJTU9 MK;;?+S-Z*5WJP?\;54O,A_2+ T912PD09+XF$7#\S.62@UFU)_J M>J9C ./]WL"1%!$-7N_ M >[2]+W0Z.6TO,]7FT6(,AI'"4LPBD/49#!^L+- D=2IRCK/G:ZG=X!T^KHL M10J]W0$[VOW]-6+L]_C.XFM]7I&C&?5Z5>3'^KV6]U)+Z/_Q@;U]NUW^]&MQ M?UU4"S^.*$!A*JQD 041 3'N+= 8D%!ZE5SQN8Y[?H/FPFOP**S JE(SWN-= MLZ+6X_>$>+]W8"2U4(L9A>5GAPSIK3"K,"6W@/S4Q5-KQ)I$S& 96!=Y:?X: M* @?KNY%D]\6FR7!].U;TEN*<>K'%/HD93[S(0>0#$,H&F"Y"R5,GN]8"/>H M/ %+O-=OB4*_U^5,0ADGH$M-(8\PI2.5NI0I2.8$U.E)IQ:%94&7Y*)IUNJU///)RSIIJ$:="EFHVYITT]*%>F3STU?.#R6 MHNJS,P-5-73@><)JRH6TIF8__;4W0''2U#/&&?%#"A*$8 P& U$8R9]IK?;8 M*314H%'53@5>)#73#24:6BF Z$JD BN*TNB&'0-)E&))7@EW_HTIH#H),U$^ M#>#/%4_7=VFE^Z6H[O/-]U_NK__OWA"C,40L"$",,1,:BF*V2U,3'F(EQ5-_ M_!3*UZ/R&EB*?5V#+TDE=$N5AB(>LJ0KC1IT*4JD6]H,I%*-/GG-?.'PF';J MLS,3#35PX+F6FG(AK:FT^+7XMKHI/_U$BX\_O15_$I%J]39!D$*81H#&!$;8 MST"(!AUG,"6IDKP:69I":9>%UR'T/OW4?-. ;/XFZKFG&:N2(CP9H1IZ3 ^Y MI#V7M.-25Y_-2%64ZLG(-5!M,Y+E57R,BS%!M\+A3+3=CB_/9=XB0]**CV_^ M_KBJ5\WK=C@[P4F(@BCPTS #L?@FH4DX6$LY49N(U;0QAH^G6+"Z\! MIJ ENIQ)J/ $=*DI\!&F=.17ES(%Z9V .CW9U:)03G./^WQ*;PT9FH'6FGI0 MVGM?5 J\'LK/17$HY(2FD4\B$B>$93 AT(=H,!)#[,N=@ZOY<)4W7NOHVPZ2 MLLI4YJ%6TJ,259L/??S9+&6-B$SD$H# M\*65E\)L&_';U::XW!;W]8(%+(Y@0F&,:8)3DD&6#/88"V.3K<3R5APGI"K#RJ''!CS*%<3C@%?6J*JL.(<'.33$9@Y/LXB5#(X&"7 "ZUQ=R>M3/HT(4W8%0\B,9I 2OI90&&,8E_J6$!#$XY5K,/35A$H#*T,&),8A4Y# MEIHF'?!TX77?>*2]YEQ]8&K GL( =1H6]0:J^FS*C5E/^GYJ[&I.U@S&L!:< M**V^0#H:_-.' B[2=#*8@B9FT M9.L:<*S6A]6W%UX/34%@M'F3D.@I*%-3YZ-LZ>BR-FT*DCP%?7IJK$FCG Z? MK7)NXT]FWHEZ&J_N:KR37U;5%6Q#!8A MQ:GO1PSC+!::C[+(WT%@$$L=?>S$L&.-_B ^O\OKPGNH5C>*141V"5:;DYV< M6\WIV0.<0HT.D7H'4,\S32O#H<2,K=6FF-?DK5W73LSC.N!/;HM,71?;)[L> MCQM?8)8$/F_,IX!$W(\@C'O;G*-4OK+(FD7'HMCB]/*#%>!Q=93< R'I_:EL MPCI[,T@O[/M4NGS?U!*03S=WQ?)Q7;R_Y:O-:EN\77TIEI[C!& 92AS$X,.NXGPU(O?+6Z["^:<%Z>[1> M!U?OCC>;#2"7GIR)>[7DQ"+M3O(3>1)'LA,'+3&/W,2%8Z7SMUA-.4?,9M]_ MS?^KK,@ZK^NVD"<-:0)2'X>AL!?X@1_%:8\ I8Q)G5GFPJYC[7REXUY_]UJ\ M7@M8J_;/:B/(R>>Y^%?33ZO4.U%0!1Y')-1%:\Q#0YUX5KI_EZVIZ-[^N_Q^ M5S84)B$$*6=!%*4$!A3WVU0$"NPSJ0-H7-D^JYI>/.G0#6K-TD7K+6(LJ\X; MPZ:TZK3#U/IZC% ]C35JFMGKK)EW\EIK@459O;VJ\F5QGU=_U/VZ1D2CA"(? M1S[A8SQJ$JA.DIS&.>5'3<3V4)37'>W(TW,N M1O1'F[9Y"(P^_-+2ZZ,X)5C>;K_F54&++\6Z?&B6MX>ZDPQD41K$?N(#!F@F M!M-\L!<%0&E7FKX5UQ-^/3#%:3Q]TB1G[2;A2W&2KL?D'8 ZDYR30_5JPZQJJF*$:UR C,5HVI:,Z#RGL ZD^R,4#2B0#:(G8<8 M6?&DM/_:J4E4>S#7_4.Q+?#GJBB:M&DP2#$"%)"$IDG&&/*#-(@&@R2*,Q6% M,C#C6* $LC<]-#45,F%.3H0F(DU-@_:@O#VJ,TG0:8)&%,@"J_,0(!N.E-;? M.#7Y>;^]*ZH7<\N]X(4,9<("2!$+ Z%W-$IW@D>8TH#*Q(YC 6JAJ4F/$6MR MVC,586KBTZ(Z5D]U%OD9X6A$?VPP.P\!LN)):?^]L[:<_W9W)B]G+. @9#'P M,Y\G$$!(!M,L!4JC-2L&SUL&I7^6MQVVC=?GW1!M,ZWQ9+?%]6V]4_NBWXE(* (+_9CI0P#&E(LJ%,* ML/-]F]Y5>6;[7>AGM5COOY8KM>\K+Z*'UAD-*:9'X0,$90% M88(RWB/A, U\J>,87-IWG!8.D+W5QAM >SUJ;X#M];B]WQOD7@]=]3H_%XTC MIXGG;A%9]7FTUS*=YU+O[A MIO"^#CU[O:K2CEQE?\H3R,J:(G@>0B>+6>> M%_W;Y$A6QHX;Z[]=%?5E73\6RT4B>,(QBEGFIX"G+,X &8PS["O=2&/)I.,4 M< M$(Q Z@]&$8]"OM@4GYM9S2M3>92V*-5Q4==Q7X"3[L0#'!M**$^FB0+:)7 2 MY:/%@?*]ROB$@C=@418ZY4:8L\"I.R,E;)H<61JW$I]BRC..?)J0*$H"G]#! M**9AT(];V69I9=3ZFCGU4>N 3+I7BE_0'+#^4$,L6:;GT>-L.:,VQ%+C2'I; MP$-[FNSF\]M&S&O^N'VLBE]7F]7]X_W0V>EC01ZK]B+X($IQ)LS3 &*8-*N< M47^Y2!R$)%.:NK=LVO&0J^D1BGL'+%,KEV";FY M^EK^9Y%7]<(':0A1$E',.8 P9DF_!"MPD BY4$\%Z\X%-/2="*@*P58UU!&W MCF3THM'19II0@/9:U+,4T#VIYAJJT4 _E(SJ^*>GI-I,VA=3\4X6'1($0Q3% M?H8P@"B%/. 9ZI&$8E2JM&7"A7WW@AJX$E0%DFU+JAM^G8MJ WO>LKHCUHJP MJC?3CR:M&AYJBZLNF];EE8LNT0'A$46$4N9SDB0\C) /Z D(JG2V:\.S+L7 MU]"1N"I0;%E;W;#K6EH;U+-6UAVM-H15O8U^,%W5<%!75G6YM*^JJR^]O(? M#S .8002GX65?7JKJB*_%:HT )&240HYS * (YX$#/L[]0]1BY2 M507KCC5UC\2)LJK0;%58'3'L5%.6NEZ];M-YMU\GO M^T[^,*Q$+Q\5CRZU1KU5:;7*NL-5_UF*J+ET2M/_0PFFO%=Z,JG(FO3)\>7] M_6K;&L&;97.(ND!2;&Y614U7]S41Z.K$#G2<]TTR#SZKR/?GA^H M[I!!JWWYJOBVS00_?RQP'/@P2!/&6 J![\>8A0.(A$.E?6.633L>,Y+WO_YZ M>?4K>W?URO[NZ?/<+>T"W>.&KKC MTE1$U1OE!U)1#>=T9%270UD=[<^]VHDU;+:K":4F-(K#- (0=F*-<42"(%31 M2<5'.];!#HV:X*F2(R=H#GE1$ZSA3.0S)71/>1@1&TW"YB$FNN!+*R^-CACT MI=0[6TD2P0PPB/PL)=P' :/^8 OCV%?7!%4+KE.D#HZ.-BASI2(1+FG248H+ MKT=T9LEXQLNKRJ'+XYP$1-N'HSIBQHCT&"VO[YK,1OS%_OZX^I*OVUQG2_*J M^BYRG;_FZ\=B$:,0AUFBZ:_N:+XH] M3L71F!UV)0=ADQ.K./8:.&V_.(!XX>5;;T#IM3 G'G+),#UC<5,(R]?KXEVQ'?:F10% //5)['.0 C]C./!W)OU0 MZ=IT(T.NAUH]-J_:@=,XT->,2LD\:RH6%=.M@<"/!P2VR\8>7J_+K^T! 9ZFV>-'5KHN-U_$P\OJ>W." MBDU=B%RAO2#OR=!HD48180GR*<08(AJ'$<"#Y01D M2H6&-NPY[A@]1*_H,'8K&&5[,^1-/^C/-690K3 M%\NG)EDMI _\]O!:>KN+ M-Y_-K4Q]KM:KI(U(E4W*YZ%@5CUZ<5]$:3+"-Q;RL1YJA:C->QX#S8-Z"\;?[M8"2BIE^:S,DIEGO2U#2JYZL% M]&3H<19I.LK.:-YDPN8\Y,?0AQ>9E#DC6DM'BX!%">)!"I@?A&E $Y@D@PV4 M9I%*>;':DY4D1;>(V"0C4B1*8[W(*D=&ZT1G7!R27122)FL> J&)?6P12)$! MO9T('U>?[[;O;W^KNUN*%@%'(4S%T"X+N$]"RN,X&&R&(M'1W\:E:LEQ#M+" M>5/>OA& NBT'6JIAR*:.P3/0XDL M^3*Z0<",(4O7, 8@85&,,4TY)"D/?8J'A:(D]CFW=+&MC"GGXR6E:QA_J&L# M9:F=1^>RY8S:M8%J'*F-#!8Q3B/$.S?&E6YM'O54$?S>L5?9;MQV_[<^A7Q;X,%88H M#A(8X23S"?%9F@718 G$:E.(.L]W'! /(*EU<"VNY'J[:YK4NOX!FK,5A1YA M9$073/B;AT@8>5#:>YNTY>-Y]2G&G,<4(9Y$P(\#@&@\3$"D&0Z4,FP#,X[% M1*O*W(0U93UQ29BVK)R_Z/PT0W(RHTOK[-1&VY'3HF/&C:SVO"NW1?TA_]ZL M?PRSGJ"9] P3$'," *<<17S809.R%"C5=^@\?QJU\1[*:KLJ-UYYZVT:E,T! M)^K+H%H$RNF/:^[4A*=%X_5PSK2.<821$:$QX6\>"F/D06GO;3)9WQ@D[?M@ MU&<449APVLR=!#0)N#^,P6"$@%*MMZ&IB96F6^18ZPZ=3'G56>IP2JGA6L<. MVYG4:)PIZ<4.;8KGH5&VG!E=[C#D2'6/2B^3>+-L[YTKEB_SL@5F, ^9C&- M4Y&2,>['8$#@QTAI@L>F7<>:MMN T6=+;;EFWJ'5ES:KQ$O.#9^)<\4)Y('N M#P=T]T"]8V/!\^QQD2!Q;$+:05/,0QR=>'9B0XQ]]A1DL[%W4%2W*Z!)2SX1 M.T[/N&094CH;@3+UXZ4<66%&?_9\ 2GC0N-2PDB&&:9!!H:M41"G.%!94-=X M_"2+ZT.AK7;*I<.;[KRY5KB)!0Z>@W4UN.9=M#+;_DYP M,1R*P""A* XSR(A0SQ /E0M(!^'2D4$YM8<"YA \F;(C0Y6^-Q,O:N0;#3[ M[HA?>Q/P>X"SF(/?PU&?AM?@>AZZ9M$?N:P:-JA3.)4O'6!D; M]9F0. _Q,7/A^-7GWN)!-& M-B:*7F=(>8;(*CG:4T-GFQ&2FPJ2)FDF6J"#_/3DCZ+WLCW_T[:\^>.N7 LR MZN8TS.WW7:UEEOF Q$GH,Q##.(A33G8& 0B5SG@S,.,XT3A$]G_]$PR#]%_: M,W>WW]4$PH1(.;V8B$,U^3@$]3^]#I:'M]MJ=?VX;=?JMZ7(1,Y:H'V:N!'A ML<#V/'3(AB.E]3=1^4"^;E:IM=P=T!L&(@\B( YC3@A*6!IGNTR(LDRI@E+G M^8YU:0?)JQM,%][_Z?_D^X$8^U3>EP;@OWCYX_:NK%;_$#\3^!>^W_[_7\08 M:5-XJ[IN%I;;4_H>M_56?"%&KLJ'\ZFS+J=EK@E7$[$]UY\ZKEM %]YE2^+D M)^X]9V9$I4QXG(<\&7GP\@0]0S94KIF%XD07@1HU15E9S=<7;([DCO MTFZ(>70M??A';B(SX$&Z@FZY7#43??GZ0[[Z_]A[U^;&<6U-\Z_PV]2.EE>? ?IKL?[UME4&W$5G:J%>LSV%>["F^\"X6I)7K#W^CG%NML^][YY<,YF0J6S5W/L,ME"!"@-_02',15!?46<3/IC YB/L@2R3F[P M>,?+Y=U*SO)H):$P.MA6E; M.@\DC4G@W;4OH!>ZR/F]6)<;]?C+M>ILY-5VD64I:_839ED8!C%10?K/5ED2 MA*#!)_CA4VSW*]=;]?.K>F]MT>F"005NF1Y2G+KE "CUAK\#,R_?,],)88Y- M&^"+L;_SH(NY_-+2>S:V,Z-&A:OG>BGF4[O5]O"%NBY?ODX[<0PA&H1)2 7E M1++8%VE_S22+,M@E+A-)FF2/X6$?R>Z.(C?%9-JM.GL)C2?GA;=+PNNRF"=, M[;@/ZN(Y+=YY@'OJI-_M2D[@N-/-%@9;H!]OM1[")W49!N/$+?BDW>&]_9K?/:_RJ_MV^8/E]^4FWWVAG*G_5-OB5DF2ZL^+A_5U M ]S\QY8I6_ZU" 25L:0!\P,22]_WHZPE;$JS@''0;62NM3@>J/?RZ\F_;OWQ MILG@X M_8#?7=>%H]F]G5"[ CJU&D5QX?0(-7KL4O+^:)+PZ"Z])8^J=^>-, M'^K/3E2<\P#V9-D>]V G=1F.>W%_G]]N=\O>2M+GY3;_G->VJG9H6?>QCR21 M-)$)$0(15$_GJOYS*CM)@J- F+'>@9 )0;]3?WB,2YV ]S(#4_"[*"8H]<]< M0N;(URV<&<$>[K46Z1T6X=PP[S+5DXQW[B\<\/7>IG*=K[=5WP0I5>+'4[ZN M5&.TSN^+[9$B%'$_09F/6!(CU+#96GQW5X1SP[O#3$_2W;6[<+CW1\DI M'>W-E6H<<3"#=*0F(HBE0C4K/L-1$E$<1:)70V7@FX'=KH8)H;X[>;%F12O= M^^5 N3'++9<*E./G*Q!SAK]5%O4TS(O;,6<#;Y##6N!V4V9S@[:C+$\"VZ6K M)C/KWU3;46[ZRVF.P_NQSVDL$RY\07 4L*S]?HL@E. $=%J#M:"3SI5W2LTG MQ\?Y"Y\%G\S:,=/=GN^4U1-GPVI,?U9GFWNZ&49C$BF2\B'J.095F24;F+2 0=< M*([C_E*CI3_<=]S=>3#[C+CJS+EQR+SP&F'SN KOT"-]]!DY.TNJF64R#*P1 M[NBR2#P^K?XY;SZM?.,*FH0CE/H2^1G)8NQCAD+1Q^4A 1%I?#3'7%+& MUWMNS0\/MN"G'J*FM1(&JE[;KYM6W PN[GS7K@%FV;-Z'N2RF$_IZJ6$GM&W M;CIL?Q;;K_RYVI:/^>;5%G5\8C6_3*??8&8WN&/VM6=H6;R>?:S7IO-Y$]IL M8?ZNM7W.U[4/^PF:L[-4-/.@IKOTWIV3L^JC@QG\A1]*R4(9D2@CTH^2"$6L M5Y P&4,^?[09%\10^)>0NQK^=%##EUW=UD'KN:?E[R/AD^25+$4\Z[#ZC3C*9)D([K$]G1X+AK1#F_ M^N/C]1?O$_TORCX(CW[,//6'G_\0F??ADK++#Y?7E^++V!Z3I0*QMQ#JNBP< MK7_N97M_G6VK@Z&_(PD\IL3^/C0>E:4!F<>["M\RIJ/K:.<&CY,HR63*8LY( M$@B6Q;23E."0@HZ,=2IDPJUENM PW7GFHICT #Z;$H)1W*1P9K1O#>ZUUEXV MAT4X#ZQ/D^K)/6_._84#7A;K8IM_*+[E=Y?KK:HB12VLV:M\I$0-V66*B< ! MB@3'R.>BO3F;A#XG$6A:TD7\B7#>?>/52^V^%3 %MT7[H;P^C_/FF&[U_MH( M?ET ,X*SMK%:3+9?3'-#L8,,3Q+8E9M0\)9#2N3S5G7RZ6-]P-Q_-Y]L=]_X MO3J:0R+5/@B?,()3DDCS5QVAZ2GXI4AA1TKI+)\R=L%CZ4ZX=?U3,>O5JH MMU?:=R1/@\&>G7H(=^VD.8E'F.B$KF\X-0#),;[.@W6C,BCMO65CR$-_%-4" M$9*BE# _HCX3*?(Q1WV@+$"@FYD-'N^8.T>5P_NK%C6*+WJFF>#%NE\PN@"M MFH BM0!MB(#3$.,BU-+KQ:FO=7*VX452!&FK#%D8>C"*-KWP2DV=NCS1L#1^=( M'9,T!MEC[,M[!%(#M-6"WO[[N:B:*[ _EMN\7\W)GO/ #X+?\\>;?+/P$XY] M-4 +A.!A2"(LH[[O1'Q"M%9+[$5SO35IK]%K1.Z64I5,K]:IQR6+]@X#ZCS. M0C<:O6>J]UJA;*_,:::.ZI@ 337JF;OP;.?35L6Z";NG.&^U>*=S-.79*#;(8[).: MN@*ASI]Y\?!UF]_1;_EF^9#WUX_51X OD HK(IKX/A*Q3#)!<<\ZRN( M'UG M;"S'%.JE>[3+^GB:RF XIBZ\G<.= MN-V5B\VM!M/C:L"K=[!EP^7YX,M*-F]@S)Y+NC@[[+0M<$94]XQ(2=0#J4RB MB"1]""0(AWS(!WHP"%2F=Q;>*8-A%(*9HX<<9[[ ^/)B[#4M2 X=&*"&D5'S M0(29]-+"BV)>^?OO$3GQ94HX"WR&"/<#]?Q^(H]&R$\7"DTWI6X/QB0"Y*4_ M%*/][O?GXSZU-\N>[^U__SO<,?[-KRZ ,QBH$F9N:%_Y6ZX?KO/-XXM*F/"$ MA:E(PB2.8QPRDHE=)20I(["J813">=WHKO?=[3@9;#3=W#W[AB\#-624C?.H M(N-2.+Y7=KP?NI7D2HWMEMMB_? A7U;YY[KK>G7_1]7NNUM$089C3I.(A5@P MBD4:1>U^.AE&B$E8;1D7RWFUV1[URE(NI8LW<4Q-VQVHM8C"*.(181D.5 N84!F&L/Q M)%/;()5']^<0-J)T$81W,LY0L@@BT'\ MF+JB"Y[V]K,/955)E5E]NE^Q?E;!.Q7ENCJZYSBOQ(_M9JEL+=;+S<]F)KX^ M.+X^%[!!(3".@CG5.J\>_'R+O.B M_=VVS@%&O[,6IQY!_R[E"*-P5X"_U'G]PZLIX>U3\_:YO;ZNOCX;\&4ZNT6 M:0'NL& &&H$YO [S:$AFX40YO\H*/,]?X^)FNI6Y*LSEZLMVN7VN[TYZ\8\7 M/!-A2N,XE%'DAYA(%$:],A3@#'3B_P1Z'/?0=ZJ:95_@=0!3%(=>PS.WDH U M,#OUA_,NMUR7A[4ONZ(;$1<_O:90D5@V4'Z4B"-($QS1!W<%!)),L!=V:,*TR MQ\U"AY3J1>O@+1_KDYE,1BV3%1ADG#+'LG+3<&BV&W2X?!V.3"P5Q;MCD:F+ M?!Y-R9ER?W.\<9X2&-F\U!KJD^@^J()<'8R'%@SQ$/DX0#S%012*0/"L5^&C M&+1AU';L"48.W3R6M\ZW]5D']QUB;MHBM-)0F%L_JBF8Q'57HX2V:.H3.AOY M1Q-2,Z+\*9?A'!]=7K,F]?CL]%ALR<61M/U8KN_RNV?UKM^L\JY56&2!&D;0 M*.19XHM81+X0N%<0,0Y:+;49US%E7VCZCW6Y5L!MOK@KZMDW*X0ULWL479T[ M[8JL+X3W)Z;-"JEO60O'Z:@"FC5*QV6FAU$+[HU$J"PW>?&P?M%ES@KUFM?; M+HOE:A$FB%%.@X 1K%0QP0+4JZ$L!'UGZ4J#8[1V^NHN;#N]<7<@S@I9QY?" M*,I.6@"NB-N7TO&_.TQD5@!^SW4XC*V5XZS!;"]+/4A;=E7K5!2=>?5.5Y9O M7AZ(V?Y(/SO2O.^+-$LXIAF/ AXQG%)?TEZB2! .%^O\H;ZK^%KS')6I]6D! MAK2 >94*&/1WK>3Z2]?^/-RBWYL#F+ X3TD.MP3S+;V)FH;.^+C]MRF]%52_3W_WOYVK;'#;9"JL_1,F%1@@(7?8;Q MJJ;I*;0ZO6WI/?5*O;S:%H_U\[Q-WOZ1Y3;$0I%9ZAQ,5$R.NP1=(5Z7WBX/ M;Y_(NV/%LQ6BY>9_VL)TW>B/+%1[3?V[MHYIX.V5V=^D6;>8,+0QM^WUR!G; M]J+XG81J@44@THCP&'.?DS@5.-YU(&@0@LY[MQ73\8QLH\?[M=Y.8&7^%>[I MJ/E6IW:Z:BU;SP]4SVHR]=A2^.2I<:',>K+4/"N]R=&1KH%9^'+OUX)DBU#H@XAZ[!D'8 MLOZFLE\Z5:?/)W3+JI?>Z+#)T,V9L<@TBU/L&>6*+FL^YU6N_NU7NK[+\F_Y MJGRJR=:OSHM8^KZ,(YP1&= HCIA,NR^P9684 M&FFJ'HNF\Q-&I!=6'BCK^30ME09=&F"3'7?G02A+N90NWC_ 1._^*E[V7!7K MO*KJ6]#K(VH.3FROV,^#WQU?S,L2[(ML?+QYMBW7X.HW[]M,KK.=V;G]Y_J<+]-5_? 68$)R@@C2G=>94-C)V[ M*Q*O[KU=$2GY[0VUWF$"%Q[[>?@'D MJSU)T@(G<>16AV23N1$6I-X4[VM!3 MT[?3E=0,IFXG3+8\2VTP:HSK*9*'=?'?^=WE7;U'[+[(6W55(VBC?K>^^[ _ MW$S]G:I.70+KNSZG@X:H.I*?I GU(Y%E,4^$ZE40WZ>]_ #%6I<+STZTXP;^ M$">?U+_Y6A\Q]VE3W&H.96;G%ZSI/[_>:3H)^SR]?:+=??9>GVK3[!PDZW79 M7O1MD?KKMSJ$E:T^Q?E+PZSW<7[=T_93YO,V0;LUSDOJ_0[0?%Z667659F3+ MVYVJ&0G4[WX-]00_;4I9;AZ7E^O[^C]O]0?]E".)8Y&%3')&* YP+XAD--+N M4+F5X;B+I 1ZC4+%O>IY-7"<]>3^:_1UYF,]K/?R[EAX7RP'\L?U1!R7%J!O M,9]2,^LMN"\]O99_E(^GVO)I"F<&K?-$B9:3O_C NX*>ZZM_OVY]%_><\^-_;M=Q!)G:1:Q+$8(^6E47PG50L^/(IF^]WW#Z.<[ MG,':2?):3=Y?O:J)+RP^9@X)*, CIOLXXK3=:R!%Z2;66=$&_NNC2/-NX9-09GK=^Y_ M&^7A+.D"3&&8+"9^F%)%_3#]450+QCG!+)!9?:*F%'% DIYA29+28 Q8=&-, MS99:F&J8E;21?-$VT0PQ+OP;21D=ZR8A3><- #90-^?)&W 6[R#'S)41U,G* MQV6Q7B1^* (:4154_6^@8HFXCQ=@"?KGCP$4K_'G/ MP*D(U.J ,0CHZ6PI!,WC?0X9.6-(HM_S>BYD07F()),J2$!QBG@2"]['(L#I M4+,($Q-H%'-T33/BC0._QHZH6DGGQ4RK01\Q0!MGB1=H#L-H,7+$$"L?BG7> MW).V\.,LRA(69#S F"01(R'MPV62)"/(HA]D\DF;6IK7:!O7NP'X: 0;-Q:. MY8V.>U,P9^>./G;@ALZ2/ 9I#,/'U!==_NQ6G_>KSMUM<,N'_.K^G^7VX)K& MW;ZO!4-9&L8A]RF.LSB*&.W/.O43%F.MC>>.);C>([636"]TWO2[/Y:=/!B] M7)6"'MMF4 P\NWWVNP5[VXQ[$JD5;V[/G>_2W=:,IIY.\!-QX4U#ZJZ3K*< MM + B/QI^;-95+\NNT"]NKSZ;5-6U8)%+/29B&7$11)F,>$\Z,*F480PA+VC M@SFF+%]67V$H'6^?'C0G=0Z&QUY:?2YE)\[;J[OP&GW38O ]MP: 9\WH>:#- M7CJEHQ<2L-G^0[E^4+7ZL?^.CI>/CT5S I3B9U'>?<[7^??E:D$1X1GVP\!G MA(J T%AVBP,)C5BJM?O :D#7G!MO9_(7! MK5;X:RUQ__'F7F33"50RO4[G.5P&['D_A]MFN]OMN*ZW@UW3E3>:#">FSF!7 MNO642HC[4M;O,%]X-0]:QC'OBACWS!, IZ 3ACU$(C8A+V MC$U)V>CTUHU0*ZPS\GU4N^+:MTB64$@V.-1[8Y+>ZVV.:W0"V\G]3QF6VEK M7)KNI)W1-W]L&W-D#;Q],?5VUFV+<5)Z[ ",Z;E%:'8Z;$WU[+;0F3IQUTICT2L_BM,6FQ(GC M3EN2=YVWTY#T84S;$;"Q?X-F!)X3I!4Q=$QW69@_;^J+AD^<@<_+];98/Q?K MA^[C['*]_\P4<\XR(4)"TB3S"59#IOXNC@"G*(,L&#N4X7HIN57NO;X7 K; M[+(@]):>9U(&L(;IM/W[:SDNO+UX;Z_^;-_ FQL]L)X]0>G-8Z5[BD3+R6N& M$;5EKKQ>KEY?72*CR.=)G,0^BDA$$A6O^U:78!1+$S0;QW+,WTZ7$6S-_0,1 M=1+KS+#929O#=4;OF/4^^D;;/"N^C<_F;8A9<@E*JO;*ZM=1<2QE*C&-4R*C M$.' Q[R/2M)8:WK"5BS7I&IUF9'*V#\8J::PSI!4K;0YD>J$61JD&FOSO$@U M.IL3I++C$I!47[;+;5X?0*S,?8.2&*$X8(2P""<116$0A-W!B"2,N=X*G=V( MCJG5J#-BUE@G0>2:T$0S?C4"FRO:&HDSXMBP=>_3S)+ULV*:K9S>)IM5Q^S, M]-7;N%-,TTS%#F4:9G'(_#YH%J81Y*[;D:% 1(-?>7M=_X@WS;S=^[;:F)NS MZJC]^;SPKCHU.!C03!O1(EUQ9?I^KL'-),BVGKQYF).\F(4\U(SC+$ W"V$]"U1&.N1!U\]$&)S$&W8)N M*>0<5S%LN0F#[81&&G*U7]283Y]4SSL-4%HR?UY,M)74"?Q9]0Q,NG82\U1P M%$89CM-8BBA6?>8HD&0WU"61N>+$+$T02*5'#/"4IYD8;?YG42,1P0RL3@VUB0S MB]./M=_WV,IXVJJ]#L;,LQH1FX]ZM6V>%]M&9P,;O0)=TEXE48/B>@#\9['] MRI^KK0J]Z6^>[>^D_7ET61XEC(F8)(CZE,HDX#ANN4J$R"AP([2#^*Y7B/L+ MK=0K+T^I<,[K(%K+"X*17/AY-OE#,S]9 M7Q[^+5\_YT>Q213A. DBB7WD1PSA2+ ^=LHST'GY=B*Z7L]Y(;(F;R<3V*^T MXZYF[W)R8X%]S%.>GAV56LX-=3BM.C\/'%K.Z;CSZ< Q7>1UL:1*6?Q0;%@O M5SV#*_;SM[Q\V"R?OA:W=),OJR-%,B BH#%2DHBDOJ0HW4$X31%HN=NE#L=X M["NNJ+;%8[WO[N:GMQ?L-8IAI'1:*'K\G$MYP*C:%T5=@[U>]ZYK6KU5,F?G M[0BG!R@\1?G-@\V39%I.7SN =[!TX^*K^RR_V1Z%Q($@61)+P@E%2?+.3RO$-+?;\@1/J]^7V>=/,S%W=UR=27.>;QS=DI"A+I!\GG*.0 MA832E/->!D&A(;4L!9^09'O%]>_V1[34JDW!9JL(H+ [@_OF !PR?D9@U/-4 M"Y:6BV=N +6=WDFH.O%1ZZBVC\_U17]UU-MVDR5?E55^MT@HD[Y((U^F?HID MFC*2-:&H'X1,:.UR'!7 ,3!;674]7?7"O-M&&>!X,&/SAC$XF6\PU'667=U[ M.TT>G\PRP %J4UAG=EZ:@85Z1Z.=2/D-B%MQ: 8'GXU.H;3XQ@![ML7#NK@O M;I?K+;V]K<]1*]8/G\I5<:L:@#WMX_J*5982&0;$QPF7/&AWN=,(LQ2V_=)2 M2->]V,O?/E[*2TX_7GN4\ZL_/EY??OS-^W3UX9)?BB_ SJLEES6[K-,;#.RH M[@5Z>X5>+U'U3\_6,]6R;J@_:M?[F?1"+2=UW/=TX9DN .G=MWRS+2H5LMLW MM5#]5Y;A@ H44AHPE+&@_3B32.X+ 5H;,GB\8[ =*/)NRVH+7-\Q\4L/6XZM M@B'JT*7W/G=W0J+7;@Q09X1U\R#,F 1*:Z^1'CGN\F+!2Q5D]PT@$TE&.,UB M$N PQ2PC4G7-:)"R6# :O+>K&/Y EQOCE [O:?F0_P_(^U[U+WR5W_Z/A_+; M?ZB+X%7^5[QMOMKDGYWVA1^@NQ[X-^J]OUHT8K]5/+!C/$A0@GPD> MRDPP'$2R?7R"LB!*=)H[\$-=;_OJM'BU&+T&#N[+^[7:F26P2JWGAHUJ?9CP MB5IMY,GY*[69['+DNP"OTNTQZ)_SIW*S79"48X9QIMHXEH:9C\)$]&$PBK4V MW!L_?*HJWMUCT:J"UW688?IUWIE7AG5?SR:;$#ATX!T8&)DU'RB8R7\##B-\ M@$"BO5E4K.^RY39?J,YQF,9QBB3!(4Y9B).@BQ.@) F@E( ]?2I,='?D*EE> MIGU2XPC3]$GASB]#5.A:91,6+TQXAQ9FALT'%X;ZW^#%&"= X7Z<[6B7H[H MV!1B@0(B(I3$61P$"6$9[T.E4?VQ,G#0 TPV0!B)\RXAP$W#S"R<.F;Z2A# MVS*K0XXC)]X;?I@:-Q^,F*?PUK!DG!\Z,!'K;;']*8M5WJYQ+C)$:<*)9#1D M"E383WW4AR AC70A GZP8WBT>KQ:D-'4'Q@D -;8@,-QYB>@ M8&S0^6%@+KVT\() *__G_*&H9S77VX_+QWR1".EG@@HJ?9SX<1#%*=F%B6+M M7H31PZ>!P%Z45ZN"@@!JF"X,''IE! 1=F^Q!X:4#@V P-&LN<#"5_PH0HWS0 MAT1]D,E&]4&:[4_-$?"\WA2P^O$75&.6L/18,N#9+)CK]S 96E M;%YQRZ9+^AB[7OZXO%,CJV9K4QVYZULQ1.,HC4F8A"3B(<]\/^WC24RTUUO' M19D&7?7Q8R_E&0Z(C,W4)=44/AHQ"FZA/3"=,&4026.-G N,1N?Q"D-VG-$' M$+V[4Z]7U?WG0['.T2*D,O7C#%,5E!$I4A3[NUAIHKTB;!YA&O!TDB[Z7WBU M..]J#>XH&9FH"QW7_AD!!VZ=/>"\8<@@;,88.!?0C,KA%63&.P(&#%>_O-I< ME]_7BP031C&-:"I\'&2'P)&289")D;*;@^@%&G(%["40+BYM'$<8?0>M8^;(%!W6 MF/HX,^ 8IW&*.N-\ :/G4UEMEZO_NWAJIX3B)$RXD%)&?D1\7XA],!(P[1UQ M(T),C)U6G*?4&4TGF[D(1(X[ \C@ASI&2=.CK\4 R0$SYGU6 M./,$1@=-.ZQ\1'>0\8GJ;V3*^2N\F>QRY,N@7ZGKPSE6G[Z6ZW[##$\SY@>8 M9HA(JN)D$:%]B"CVM0Y6-WJPX\K=Z/$:0>"5&[A)[U=RI_[ *CK &AN5_3CS M$Q7>V*#S5WISZ:6%%T2_\G_);^L3TGZBX.:ZV*[4V$2$1*3,)XDO_$1&6?H$@#OU/@&!MO/AQ^U6] 'FSX94D:1($/"&8(R82/T,HZL.@)/:A[3SHX8ZK>J_)ZT4! MMZN;&:;?W#OS"@8 H$TV6_Q#!]YI]8W,.C\6QLE_H_4?X8/^"L*?^6KUG^OR M^_I+OJS4N./NLJJ>U< C('&&B?H?Y!,A_23$8?\!78@USX ?'V6:=81:W:__ MJN5YO3ZO%0A=23!V4W+6T8,<9 M?03]LUP]K[?+3?,)WZ9:Q"DG.!51$J T)BE.DZA?Q0A)QH#;L*!/GP8Y.U5> M*PL*&K!GNH!Q:9<16+2=LH>3(P\&,6+JUUSP8:S_%3;&.:&/"_Z\V>3K;?NA M?SV*VBZWS]6")3),.?-]PJ,@HQG%R2YK*FQ]Y_VW/%MNEUWT M!6(RC"-)DH!*P6@J:=2?-1 )%&G/JHP*,@UV#L35)VLM^WH$_WK7S$E=[$Q@ MHA%VP/[9_$;W+4L&L3/2Q;E@9VP:;WR.:\$7V(%#&[[!C*-)J\797+R$, M7:*X,\H())H>V3V":)?_ M(#7,G)H++ S5OWD6D:D+^FCX\KA3UHJ!H +JEBP9W1AFA0=,C>VAXD?\@&LR M,;%I+G P$_]Z-&/N@3X0/CW?K(I;N2J7VT40281"+.-$_8K%.$BB8 >=( 0N MMT">/ T.6D5>(PE* Y!/NC!P99$1"[3"@]P'26#BT5Q 8*3]%0?,'0#L M^R@?'^L#4,O;?WWYNE0OR]7SMMHNU_5.^D62QDC1)XD3G*JQC*09[L)6+# MV;E R4XRKW>,V/,(ZR:*Z7:[^*U]N^JL[&?6E[Z=!BOPP]H7((K3G"/)C M[8/!3 ,XKO+]AO%6F%G.#%:.O.CX[Q M*9067R7X"&D?2ZH_J18H4?V2) J24)"4,Q8F_FXL%L:Q]L?'IL^?:/3SHFHT MRN"#'K!U^D,Y_@^$EVL)".9]B>!YA$F!DDK;1Q*0 9"8>+*NW$XT;+-/E . MS-!"BHEY7Z[O\QW_F/QT*=/M+C4JO(:69[2!5Y-@IJFO8#DT"^S-2-MJRPN$KTT87A= MR-"P\X-CI/[7JS^CG'@/&,_5KP_+Y=/BR^W7_.YYE5_=_U:6=]^+U>IZ>;/* M%UD@..<"!SC@C(=$DCC-PB 1%,4BDUH;5\;&< R/7E9]IF@OS/NKD79ZB<&N MB<,8F=(_&$R,K'L#*#U/[I?532.H2[F%2K[:5OV?'-/E'6_>8(PM-\]+&FM9 ME';?,1AU^A@?BG5^N:3$YZ\LF. ).;6S8,A(_27MEXB&#=DL2ZV^8?B M6WYWN=ZJ5Z=0C*)5E6__J/+[9Q7_/E\0%&0<,3^C/(HPQ30@N WMRR@)M0Z( MMQK0,5WVPKQEKY_J9&@.7F9U94MZNR>MX<[(0)4!8D M24@YB;+()RQD*6I"$A3&?J)U>H*50*[9]O&?XN/UU>=+\06&LG'NZ2%L,N-@ MZ-K)\O:ZC/?/C2?6D$L#I+)B[CP(92>5TL'+!R/2/M+5??T15;ZNEO4'EI_S M5;UECY?5MFHV*K-EE=]]6OYL=O7M5<5!DM)(8!Y0',HPXVG:CB53'B8QU5HF MGTJ+Z[FGZRO^G][5I^O+JX] LCDO!3WXS:D @)-7M:I?;VI97J?+HYM-?71] M\^OSH7*DIP,TG:JTY@'7CTZ;\UKSDU>]Y<+*32NG@Y8/A205YRC?;GY_4Z[:EZSOQ[^?BJ:;B M;YNRJA8L#6G D9!)(BG"4>#'H@_JTT3KPA=+H1PCJE=WX3W5^KSE^L[+>X4P M3HWU5(]4$]H)8]7>R4\[)W?B+KQ&WK2X&K9J %B6/)X'LFPE4SIY#V'8HK>W MSX_/S5 SRY\V^6W1C#[5KU=Y_0NE@S[6ET_\=_/G)S4N0A+X3$@A<7T04BQQ M%O-.7D1]#-J,,9DHQR@\R,.[.T@$1L'IBDB/E[,L'1A9#POF,(<+;Y=%0]O# M/"Z\(QY?O 3RM"2V50@#S)Z\G.=!]^G3+L][I@WN M^+!G^3QP9C6C5_L_;+NEO0WDH".SR#+J9ZF(1) PEF!!PSCN0L1<"+[XEF]N M2NU='9!'0ZK7H0KM6G:HQLM_U,NY$^_V/%0PM+IO8ML\JHB9].-U=_/\WWOI M5:FO%OW]-[Q\O"G639BJ[KG7%8_>JNY$>]#\FW60Q#X/6=V["/SZ<%F1=AV, M-"08!UIG)3H7X;CM9W]\N?PHOGSQ^-7O[/(C!>QZ#^P\2%=-=]1]]6\;]%8;V0/(]".VJC:KN:E@<%7;LSUL W MVJC)RN2\[=ET:983O^O G1U?ZWV4EVM>UE^OWV[_++9?^7.U+1_SS8=B>5.L MBNU/>E,U?[E ,O&9GZ @Y;XO.94!"MNV6A U&MK7P&K3'U:8"K;I*VKKZ2JQV9>UT>9N=,/7+=A%_6WI/W:<1=?M\LZO6-TOU M"-V;%ER5CV8WZ QE8KJ'=KCW<^'U1;77.R.6OO+2E*KFA?(WX.N(Y""D'>NA MUF3LH(++]>VF_II!*G_XLOJJI.3%T[9:1"1"/$M(?>9BE@4QD[3OD]&$I%IG MJSH,[WH?;\_332VH/M+BOMQXW[\6MU\]U=]2OWFLR>J5-ZOBH9MS^KK\EGOK MI'"OVJME>[5NKQ=^_B(!3,^> MOVC,)F8=%9'>E*R1::Z_3Z/4B MO0.5!H2U7A" 9N^<96!]^#'WN'YK")7>A^8B)[ MSC_F/[;7W_/5M_QW)?9KM8A#1"6F#*7U 3BJIXQX^VUW&F4RQ"GL;!I'(AQW M3P,_\*''U+BR6V_F>Q9.PSJAK>0+;R?::U2_Z-WTRB\\I=VKQ7NM>J^5/_4I M.&8F#Q#5>;G-@[+NTWQUN,XDOMJF<7T#VO7WP X):]W8: MAM:R9TS16IXMCH)*Z&](4EA^8UAJX*0+FDI5&18ICA)I=6KX@K=59XBBH>/Y^&(6E-X*B!CXZ M@6CQ+5^D"191XO,TY 2QD&5ARGH9-(Z>U@KN':.@0HEKV.H"H;6>G@:A2 M/6.(*G6V( HIGK\A1$'IC8$HW$?;$*7W"CH[+2(-*30$9Q+%&0X8SWX:7O4\A1E-:"@O */Y;RNOX1K]S5 M^U6SM;S_,LX-2HUN=45+U"Z>$)6MU]0U2*E#&>2D2"T*=1FO'NT"Q$?,ZT[B8;%<#Y M%"E*7YPQ!_C"QMBS83).9A<,?*^<>O_6,8N6 3XZFL(ZLX^*#"S4^U[H1,IO MH-R*0S/XWF=T"J7%-P9Z:Y$*M,GO9+$NMHKVW_*[X[.M_\R+AZ^*^O2;:A@> M\C^J_/YY]:&XSQ>$1B((8B%30<* !Q%)NJT)B.(TBV W%3D4XIC;!P?"+]L# MX;]W4KUEJ]5[;L1Z*Z46>F>1RP+2ZQ;/IFQ@C40OVVMU_[IJSMYX=7K_A=>+ M]SKU7BO?^S!46HXN(S)W>J"O/$D!SJ/+/$VJKRX:FLQ?T)'I;YU&^VE3ROK$ MFT-Z OWWF=W-S MG=>DYAWDMC^E[>K>Z_/SF@0/?]RK4[SPVB3_)B^"P='O,W\A1IX,?[X7 W9^ MO/U2.#6 FT&YSV ,. <7WCJ<_NREXJ+#(I:;^DS2ZFKSH:PJ+=$H1&&,$A3P MF JC5]DM[5 MQJO3G$7WQL7[X:Z7<^;W9-K.CHOWQ4FO!UXJECH_#E^'OU\?R*49([I"SLM( M^ZK'HEH^/&SR]DS@J_NNCW:]O%GE"^0C68>37/HBPCR447]\%\J4",C<^ZA MCGLC+[75?9%^2/57HP]X+<\X3_6FRR>S$]8+,'?2S>V: RX-3&5;,7<>4]5V M4CF^C=.>/^]QJMILZ^N][YYOMU>;+_GF6Z'X^*.H%@%!C'$_H@C'. B3,*"T M#\,QT?HXP_CACGG4:6JNJ^]D>7_5PC1!9&[:,'PF\0L&' .K=$BC,CV@C/K= M,6%.6?$&54:[=EZ2C)=?6GI[P,2H>V-=H"HK'Y?%>I'B "6,2$Q2EG 6I:P[ M.S*,DQ$.SH8I8W)X M#9;1CNB.F[IXW;ZI6"0H0D*&OAJE!7$8J%_T,5**0+>J0W\'%GCQDPH!L:[0QL7K@P,)(Q0Q=#[:6-]P6PK-0%Z,9 GQ1RMNJ/ MMOEM/3:2Q>JQ"YUE(4=21I0SR4-!" [[<5$0R5BKYV$UH&MTU,*\IYTR[UY) M TS96_-58V'F')::X::36'^Y6-N[5^G5,DUVJ%OS&;# <0Z_S98I;/FNM\2@ MZB/Z@?HPI MT3H)ST8QX;I[):8R/=,> WE?;K_FF"Y:B,!3(3T5*XS0,L(B#?H"!:1!30W!# M0KC>NE5+,28,R"LPJ%W9-)+1C:SQ= 9Y9PQF5QY:8K*FER8T/LA<#\0F5LV. MP49)G,:ON2>Z4Z_=_.Z.[GZ,N9]F*?83EG$4D:"/$4BIM>?6[,F..=NO0AA- MO0(]TIMZ=6@(\^7\G[[ M?;GIXT5(I@+%1/!44$DCD79?$*AXZF\R[9[8J"BN(=&I ?0IQIFFT26;S"\S M:NQZ$KTRDX[9.!,!?;/)S#3KGHTP5:^'-I3_J4Z:%<]FT$^SDT=I^VTR!C1_ MWMXLU__BF_RNV/9'COA)DB*2\3CB-"-"QE*&7=10!ES_O"4+L1S#NM/DW;:B MC'%CYB.8W,XM',GOWLY.X'B,F_EJ#'/G_EI".MAG$[*_988>WT?9.#O*C\OF M-.LMN&1 _,MUM5VNVLO@%2O+?F* I6%,(RQ"/PL1\BD3N[% R#*AM7G;8CC' MW#^4Y:UJ7<:(,C843/\IO!S9 +SPM=$XO@TP-MBX&9C":$LM@8GA)HW!"4OT MVH.Q?LZN21B=T.E6P8Y7!@W#]699U!] ]G-#(J4^122)?1Y%),*(]!LL0LZE M_MZX45$<-P.]&F,V04T#,]^A7R-1WRL;#WBHB<9<=VBF)9SKFVH"\9?YZ['; MT+/9(=LTC].D'N7,R(_!/Q3K_'*;/U:+Q*I^,F_JD2[0NC%2)\G*]W2QOMW\6VZ_\N=J6C_E&_+A=/=\IK-9G=JC_=W>] M_+&@)"!!C!@*6>*3@).4[MB:$0KZF,M%?-?=U.96*J-=!T[N8V&0;!' M7ET!O5ZO]UT)]GK%%]Y.L]>+]I3J:NJ03M=WWW.M\4FKPL+.$Q\%/+RVOOT@7X$ M'OKAS'\]-,[">A@M.\G-V4/MYRTO5>_[CGO=WE^U:'- M@[KNTSP^_&0:7_46@&^_YG?/J_SJ_NK[6J'I:_%TV=W>6Y_:))_7S6?WRQ5_ MWFSR]6V15\V!DGM1DB,:BB05:8K\+"8X8*(1154[(C*MB;F)I#CF=)] /7V^ M2\';Y="09)^%MT\#LFSJOKQT%JAG553 5>R^E*[>+B5ZJI2ZPW(]'<2?I> @ MB^*S*D##E?,I"E)SC7VLG2<7XB 3MKW]U^F]9&^G&?BY MKO4"T!LLG=5[P\9TT/81P+7T=3#0T8%!D;/"F<=@R%UZQY\AN_51%[)L617- M31^WY?.ZOOKJ4[DJ;G^V_[L/3GD8\H!R(K.L_@8#!Y'L@M,DBT!W;E@*Z1BH MC#\=.6MWK4/(.M,%;N'-U+O/!:>=Y?W7_/1D@]]P:X:-G^>=#0 M=E*ETU<6>F#+0SWF^IP_E9O3L7&(*".(L(@$.$MB%C#SH=W6M8-=0.M6C\/VEG.Z=6Y,_8=TV7= M'Y7J9XIJ6SPNMWFU2#E.9,HH9RGA@L42!6$?A,0(U)L#/MHQO92:NH>QTP.# M%]0F/4HY= B&HV-SYD.CEQ8-8,?0RWGPQ51\:>5]@A%#EIN\>%AW4WX_K]70 MM%HV\X#UG&#SV_8#S>J88,1'"1&)B%*J%&#IAXCT>@25*00N[E0XYE GO)]T M_^D=:(4QR6%!Z.%K'F4 (]W;]G>JFW7(0]VSP:"QU0/$=%]\\X#K!'F64U<, MX'[W9?55!:[_(_[]7'Q;KE1W\U5L&J:8H"C!V.=^)D.,:+;K8,:9U@&$=B.Z MWD2KU#55OOG%@4X8ARVYJ\?2MBH4+R6!*!!4>(^5R&(NIC9[$/&O?: MB>B8?;TN;R\,1CU+ONI1;WI+8=1[P\WSYR M_4U!M=R\FC=DF<_\.(LISWP4<-N9\F,01MQD$9A*T_\Y:4,=,ZG5>-!\2MC=U[[2"+R:VY+,> MM\YB,8QC@^[.AVVZ3@ZPSGIAS(-]]M-Z?9&R"]]TV?A;6=Y]+U8K%?ERO56O M;J%Z@/71%MNJ_ZNN/RA#QA,DLH!'(I!I1G%WX;N*S]( =$B9O:B.Z=BK@8'0 MHJEZ)#R/GS 4]D(:!NY5>JW,"Z__^_E04=O5 2S:+YEY<-%!7J7K=]H:&8]_ MWX^8198%*&0RB'U.PR 02=SK$&K\;(F0AM&=CVV/:K0U9)JZ/1J=$QAM%Z%O M_-'?@*5OVVS&U)%%-GNVCLU/G[%6G-2>%7Q\6A:;NM=[MP4P&NB;O37&^*J[7^ MVH@UXJ^;$M"FMET663SH+#;%(]G1-W[ M:>ELWV,1 JK0] MH\DPSFJ/3LX),?SGHL18N540ALY@)*3C-$*:\TY)AE$0PC+I0X)RFK>AF;'N@'(I4 M)^;KDO773P\GYZLDR$(YY@R5'(LI1%?AKV;4#&$PKZV&=L+-=[*??R MFN."@3,$HYW4@^B4)L)P>>S?^5'XCE<#T+/E\CSP9BV;TLV["#S78:M:X.7F M[NA8G7X"%I$P"=(X3$CDAUC2,&*[F!3641P7R?W&I&]%M?O>K1.G?=BF)3?U MH#6=D3!D];I>'>TUG^[VW@? CWCFL#8+/E]SQX9BV;TLU;"3SM^;DJUGE5*8C> M%.O#PVD6/$5Q)A&)$LHE$CR-H_X8,2$P[/N4$6$<,ZM7YAU* Y[J/,)#/6)- M9!\,5F\Z-QMH=2 6BRZ+'>B0[ MC[TPL+WM['QZ8MH>#I#.?CG, WP.\CH^Y,^1<[I8_)A_/S@>?U.NU2]OV[K_ MM@SA9W&82?5_/I)I/5>8[F3X*05=DFT]N/--<+=*V^JG1^_*IWJZ;J_>>RF_ M61-M__G /[JLJF?UE/K??BRWWG_EV_[),.[:+T0]_)ZU_& 45E)/%\1\8 QU M=(#)S@IG'FAVEUXYT4L.N$6V[RW3=?NM";W]]W-1%6VO>5/*E.DFK=/QF M6FY5/N;;=A&L7GU>9)D4U _].FX8$AR%E'0B@I %6IU_1Z$=MS!*C%4\"#M-L1E80Q$["[3&&/=MS[ MVU>X]J;UT[7*BD] 2MFWR!1'[[GCECE-B@++,($]/(^ZO5!<21H7MZ&')OW#C\O.^9F\W2 M;]DRP)UQ-LZ#-R-S.-X.;<$1P,=NC^6Z&8S]GC_>Y)M%D 0BY2DAH>0!8FE= MS%V<*&$A:,\,_.F.N=(*:J" M,I&0K(]9'_ ,.P!I3"3'&-F+\VIUOQ;K7SM]T'.01MFI!YCIG(3!YK6)7B?M M3.@9-&H 0W8,G@>2+.7RZO C>P[IGYVY5=VF_*[_N*P+AGWI2TYX$*242)GB M+)!]L)"'H&MO#4,XWU_6JO)Z6=!C+\U\TX/1!);!*/3*K3/!YVUC!J@STLEY MX&9L$J].B[3@B79?:'\41G,2QAL?XW?Q$\HQ5Q%)QB..2FD7G\']I;L&:[9U!6_].AVNRENGK?-+=S;4O6G-LT$ MT'FZ4;JN#76IK#L_#]XYR.NXJ^7(.>T+GE4[0[W--2[793_#?26:^ MW3 3]6#FS#\8K\Z*ID,/ M!NAC9-4\ &,F_?@>6?/\M3_E5.G4URJ4*_6/'B[7JA+F51^2I42F/"&,$B+J M$R51U/?7XBAC(&R,"N08(TK;KWPOSNO5 3^H'&6E'CPFR=OZ=B2Y# M)@W0QHJW\Z"/G52.OVFTYP]X3] '-9J\5+^L%J$(199$@@2*A))'<;2;I(H# M+$!' AD\?KH]@[4FKQ%ENO<'8)H>?1S[!6,.T"JW>WQVANAL[(&[-P^JC$G@ MU!8>4R\ AU=O\F659WG[W\OUZPW/GQ719+GYOMS<+7@2QVDJD(_#(&2)SX78 M<2SU.6A:VG9LQ^SIY7J_](+_X17K$Y\*U+J]3CB03]:+1 ]>YRP-&-D<%(2K MH[4AC@Z@T579S(.;SK)[?3ZW0Q>U^VSUR9'5U?.VJN\J4#W%!\DU1WJDV8;/5[+B!8T!JZ[$<[8K+\H=B72]X>%6SDU1Q+HN1 MI()UERPG2RQ! MRE)$22(0P9GZ/U_&41\GBR+2 4*L[TS[*^]%@-?T7HS^XEG;,1G759EA(ZQK M[4PJIKG^=QMAF!,3-\+"3V,2XR0(I$\PP=A'_=?E"9(1!]>Q:61-5S'__];7 M0C'-I))/G+2;UA?F^7LX:4['W/Q<\(^+^L#V@/F8)#R3:4+BD+:<(AE-?)3H M3+H"'N=X'I5_+=9+O;$]Q(/AP;RC]&&C=_X_+S]2"*^J'EA5?OL_'LIO_]&E M4?,JZ7]3HRHY0-4^U31%A(K@T+G.]JEEM5&5_WI1/_18UFG)2=R42 M/V(82TKCC/6/SVBHM7$6_%#7U;2L#^>MSSA;>:VN42VM2N^@E56_.VYAC_-_ MX^4UMNB\K["Y['+DJP%K:7YC"TXEPCY%/!4$HSA&01SW#\8!K*71>)SC5_B/ M=5'OZOY/U4C?E8^P)D?'#+TFQ[(/L";GCX^7UR+S_O/RXV_9U>^3M3V_L8&V M!V#(/-H>B.#2N/#UVQY:% M)TF?!"8>O8\"Q_; 6/#"F0EA\-J$$S08X=;Y<3!&?&GEC0$WRL6R MVM+[@TA2Q%D2(219(F3,TY E_7"!A4)J[0D>\WS':&A5>;6L_VAU 4XQ-[5L M&!)3N04CQ8%1%UZKZ7U>V+,,<+K[!-:9'>%N9*'>$>UOY_P&4VTX-(/#UL=F M4-I[7V +?!^*=7YUSS?Y7;&5JH^W*K8_VY-?@YA3'B&&1:CHSNL#0MH5@%1B MS"CHXPOS**Y[8O77!.6]UTKS>FUFISB/\'*8P-/:".RQ&3KH9$7SI$$#BY3C M39W'NJ.%/$K;KQN,1?]<;HKZ\9^7V[PYWC7%?BQ%)*0?D@!GA+"0]V$H2T%' MKH(?[I@\O1ZO%F1T[C/<+CW*.'4*!A>024Z('W-: M=,>U9AB%JAPCC%),:"!XY/M](*EYL^6(QT]+#*/#F4U,@U/#@5^CN'&6,YE? M&Z+)#J![\Z,'-($!?AAYH7ULSJ9X;*)T(RS.PC )&?4#&O@!1R3THRY*2'DB M02?G )_MF!V-G*8V _%@5JD!PN7[L!(L3?F7,?CO+1B@!&FILT#$,;JC\_) M&>6"]K1(N7Y0U>PQRV^VU^HGVWZ,CRG*,"418RFA,<-)/^H)HR@"'9%C%,#U M9(C2]&LMRJM577BU+J.1B9E[FG,@KHT#3G\8>.9FZN,-7X9F/<;8. ^BC$OA M>*YCO!^F;.GZ.$GB=L; &F 9LZ3-= DWJ&-D2>V(YC(-T+Z9(&1$ @,+,T9> MC%D=;B_>PR1&69H0@E+JTQ!GI)^0B5@B0;?.& =QC9%\K5X)[^/RT7 49&R> M^6JP==^ 6-&W;++UW_<&0F-=G!]=S-+06/PU\&4,:=JWJ>L;4& >EE MY/5\*6:6C@;-1OBDM8'Y^FO.ENM_7=U_6:[I>ENNB[+?RL?]!*5$]=4D2PAB M/N6X#R9]HK^'V3R$8X(I85ZMK*YL2IO7B0-LS!WAWC"F)C0.!J>=9U@S3+.421J&?I8%4;]P$GAV2ZJ'_!I@$9V_)T'EBSE\NKV>GL.C5KKW-V-YA/?SU#(9$A\%DB1 MX:B/F:C_,=Z;!8]TGE7.$;\<;$0:>@BYI@A^=!+4NY MZ"QG&CHTAEJ_+W\4C\^/K-QLRN\U1)=/ZF^V/Q MPI#D8R%F'-@QTSI=WDTOS+OME(TGF;G9YF";Q&N]W8CW^GO>38>^4 MCT *CBZ.^4)Q?&H:C+3DGRXRZ^W]E^MJNVF65]BR*JHO3YM\>7>U/OS(&2T0 M#OW$3V.)8DPH5IU-GO3A4X) N+06U#$J&V5>U4CSRK7WU'R)NP%_HFS/9#U, MGL5?&")KB=Y>XX77>OUEY_6+\Q&FI:.N?0-DM%X"\Z"B_;1*QV\N8/O%R]AR M59:;.M8B3)$(8C^(HC1)>.!G/.C/ADD$USOL>U0 QY1KJF*QT^7=U\( E!MG MWC#1)O-M)+T:48##*\9Y!MB9,85W9ILS3#S4VYYQ(N=3.S3&6C2#31JC4R@M MOC+CQ^S]%5_-\5S;3_VU=0LB$Q+'81C*(*8XHPK\O8(TC(/1GW29QIUH%O*V M'4[>]]-F12?7H$=JU77SL?L4AEL:NO=2VX-XEENO5>LIN>OD7GAW]<"D:A5[MYWDNH]5E-ZF$WWA/;:RC8=[UDL) M/) ^9P&-'&[O"ZOYJTZ]U\OW&OW>YUUA_3ZWPC(>P9^ST"R-\VT7GLFD -!& MO:D#5V4SNPD&9XF>GH9PZ^W(5O:Z5)U_]]9 M2LQN WQ=>OL5/1V^W5?7U]-O^J).67:_77]53=Y?JV M?,S5;X3*9EWE+%_G]VJ8GL6$A FC,DQ(&'."4'=_;$JQ>@KH)&VW2IPO#]_G M&U58WG;YP[M9JK]3G?5-_I@OJ^?Z/VO@\96.BT5O%F\^)0)KB)46KQ;N+==W M7BW=4]H5P!O=J@?EU?^@EEXO6-3BFS_HY'N_= G\8]I9PE%F#TPK3E.(\YB' MG"C7\AS5!(;UJZ>\'A2L'SZ45<67F\W/^W+S?;FYJQ9^%J4D]&D:$RYE?:^O MP'U $L+604:$<0SDG3)OI:1YMX?:8"@>8Z4>9R=R$0;1O8&U*H]K&>B$C*?M M&<">!4_GP30;B936WSKDPYPQBG<99QV8N0<> OUOF#(NK= M]>C.I:D"K6I'VFKW2JQV%>PZ)TV7LA6FNI2K^F'U3) JL[QX6'OJ_2N^J3\Z MF!DJFA^TTN,T+J-174RGY6*S3SG[_J.U#N/8(ID'35TEI]CM]9@=!C797CY"3&@MCXAA/W9SQ\HY7 ]2S9O,\.&-S M8.SZ9,ZR/FAW% U&0A#.0DRPH+&@:49@ZM MM4FS\YQ9]8Y;()X9&CU7GIFF\R[/1OFDRS-Z>UOOVJT^Y[=Y\:W^8J\[J2:. M HE\%L0X"](@RR+1?3]",>(4@?IDQD%<[UCN='E[83!:F;NG1ZE)C(/1Z0W/ MSG2&U2ES!F TVL]Y0&A\&J7E]VST@'!W16J(61@P$?B*@U>UV2Y^7_[OF&CYX* M39"QG*E+P_29P"!#V%@8HJGD#IBB?G?,D[>S?P,?(VTZ+RW&BB^MO"KZ+*CO M\KZZ?Q&JZS21#-.$X(AG,0HQCQ$.T2Y6Z&L=6CDNPF1D (VE1KKV/B*F,023D.W !^G MNG?-['M3N'MZ7XZ^F>\;9+5@S@R^[QR90&GM10%N!UBMRN_U-X.R5.1^OMG> M/Z]>+P[RY\U&O5<++I(T2@7SD8Q$@-3@$/<:,*(,=,.>WLD^DWACOW76I>,ON1X ;#.R6A]Y7[VTB5?! MAEP:J%-6S)U'G;*32NG@Y1M?IZ[S'UNFDOW7 G&6!H&4F)$T3%&$@YAV,4D: M)"&DU1\7R7&S+^GE9^^?],,?POM=T"]_?!:_BX_77V -_D@OS0'EQD8[A*JU M>8VX&3!J9Q004G"#YTLI@UPT,&7J$/RLEGQ9Y7_FQO__+ MZWSSB!8AITD:1D0-E!!+LY )WNYR4IV2C,&^V[4>W#'->H6_+OLCIWN-WJH6 MZ37'O?]2K+V?^7)3G?X(?Z*BT"/?64L!!L.#K]:C_='$NQ)I_H57 M*S[7B3%Z=@X@TUG)S(.B[M([>>:,$Q^ML+9F?CTM51_7U0WY5-=1H.[E.P;;X&LKCVW3=9>;W=X82=Y1FQ] MPU!3MHXIF[\!6T>E!V'K>!]UV?I;6=Y]+U:KS^5J)=L#Q191B,*$ACA-21*A M(!"AC)I(!/$@B;6N31GS?,>$["5Y?]6BO$X5\%L=(]_TZ.?:,AC@H&XYX=<; ME@P@:HR!\Z#0J Q*>Z^3&4L6:L3MJR<'@<\BBG&2Q!SUCT_\*%D\-7?(?=DN M-UL81MY]-*0B'*N UXF;_*%8-Z.F[OCH\U0+C;J@;=R\*H"^[!-O/3!OZ*M. M;]OSWK/GC7H+VJL1%S@)?)QD(4]BC!*)TTR(/J1(4Z/VTRB0ZYT]=W=%O=H& MW*[QLNR_G]N?U9KFN5LV*^&_+8EWO[%I$D1_+F HJ@U"F"HY+[76B4_:U3=1 M@WP62V)>'+29V DJ6O<.RLC+QZ=EL:GW^C?!!*>^0!''+$FB^C9KG_ N6!;P MT.3<>S!\"J37 )\ MR9N[Z^<_^Z'KV;S>?WW9IV8_8'EK?4IZ_37G7XOU,BNJ[::X>59&=9]9D314 M<8BO6F]6WT=""6LONR,90DFJ=1SAR!".AQ%*F-!#TVDL-/O8U-!*O2].3R;^!ETM.36#+T\M)%%:?7M@?8W/ M^;=\_9Q+E10OU\VV[#^+[=>CKU\C%<7W?M^5SOV'VKL3PV&C($N.ZPV*IC<;QG:0SVI-TR MF$?WTG).IJ":%!' 6K9"?&>RDTS]UK>>^7^@LUFE^^J$UWD9[L>\BWO MM+>?&9L^CXIH*YG!K64C/1I9]3XJ)[JXL9 T9AD*J$^$8&G ]S')003*[4/ M$,]Y!=QK^3O5P;UJ>#4T<'_6-=$D'[W*:.S4R/JXB (4B2A.(IG0@&5^?4=. M'PVE]<&!Y7:Y&E4'WXT!ZO_OY.@/E.L?F7T]@];*O_WLZJ@0O5GMP M"_-:9;!Q\@CW],;&TQ@'&P^_\NR,7QN?]&< .^,]G0=X+.11VG[;8/!I[QRN M5RG[872Q?E;DZQ!8KBN6UU>)[^XFSJM,_:+:%K<+CEE(27TV T.1S&@81.W( M.J5I$@2@#XU=ZG ,L%X'C%M.C=+2PGC!SA] !%IRB_>7!VDDS+Z6N'^ 6L60(<^)G?AIBY >9 MW]U\DU+",^$[1K6N#,>DOERK'UHW&IFC(I=J6 M!4(I#D+.2.1' JFF)$WC7G$F,8%,JIU3I^.)N8XC'56*]G?;.H/9PT378KNT ML5ZP?UL7J]PPE]@_4 6V$7WDY:>WS-.6!1EO)E$Y>1"M?7&&IGNIC0GU!PQB%89IFW9[TA*4I"$R&(1P#:?=Y1+'_ M=FCUM_UV2-?,>52@L4GH?3L$\T3[\.-B76SS#\6W_$[U'=0;5=RLB+BQU.^KO*/JOI>?\]7W_+?59_C:[7P21")),0T39 ?L4 $W5H$ M"7@@.6BCKV,ICBM@X <^\*QDQ];K]1=FY#JL/]$*_[51_O]6=W:];=M0&+[O MK]#E+C) E/BEFP(D)0X#MJ5 @R[,E1;;8PEUF"[W?KO1UD?=MQ:YI%(6;EI MBL 17[X4'YTCDX?!47I0:[\+3M4'C?R[H.I 4/<@J+LP<4GF47;WD'2B<9P' M<:?J['G5YRD]]D/POXI\^_AON< HP133D'%$,QQKDRLFK1;S0 %]#^!'@7]> M(Y^\MC;:!Z9]>#P%G2O=AL[EG)G<>.L,Q="Q>HL$!O=Q%'B'.>J1M^9F+18L M0TD49=+$B1$U/](PYJT:&J/$,W&M-/AG;N2=N79F>Z.NJOHA75R-'D'>.H1O.:SB]!(P4+K MD(DXXQ1+HZ 5HS*1>0:OC03_X,7>P6MEM3?PNG9Y.O":OYD]>,UGW8(7,EQO M%KR@3HX'+]Q3/^ 5GPRB.D5Q'%+"M"8A4EI1*1G%C:)49QJT=]"G#L\(?GPJ MMD5>*?()8J#U/FCLS_4ID'P8H;V--1G![C+FS5]\,^ MWQ?5XHWN]&HDLX0PR0@/0QXK$8KF]&K!N6#9M7J+8R_O?6]')^EF9[)?L.;J M NGA9LYCWHWNQ0\7)H]UQ5%)P:YUS)52*0V%EC06<8@P44WK@F1,.BPJ:-VF MYZ"ED3FK^G46L\JUN_.89LB?>S8+>?/2 M+AB8V$987- Z>) 7Y)M5T H,*H4W"Q.NF];#-H>.SP-K+CM4>KL[7<%LH5,3 MXB=11$4B$8EY$N*NP8PQT#*,$V;";@SB7"KCLX%EU.S7.*K+EP M:A"?K&V=.Y?L.V+-(Z WUMN1MN5N]V%;?EKO%UE4U5I,(YZE/*.*4:9$VT)" MPA2R81MR71!IX!NL#U*"W_/MYS7T6#N(.79,\>4+#"*U);6,B?=?'?O?@X@A M+LV#"8.4GV^O&MQ["N> M8X_C!M]6&8P+(^RSH\0TSL&8\;UI-TN/+MK3@Y3QELX#, [Z<:F$[$AGK(O( M%H="$":^,<_DOXN3EA?$I%=49&'()&:*,,11^^)($90)4!79X3-:5 M-]:)3[$QV'LV#8K5RWI3'4YE(/BU:%OER"18"$N*L$"2$"UTUVI&*&A)X-BV M//.HD7>85_DK@O'+6F_-$ MS:E+@Y.W!1.:"<1DK%@H",LTC]*V'4I"-NCX"NNK>WY]$F9;MNVL!4 MS:E?8U.T&^=ED'S,VK=Y,&6$_FOY%] ),#>.5?T6L9(LXECK*$H4D83'84NH M5!,6#R('X/J>V7&<$+6F@OAG+C51'D&\'C:(D-/@88.#. #.G! M)80,=L-^Z6A=OK,-<4QNIDV8(TC,M0XY3YC(VE:8D* OJZ'7]IP6M7+:B -: MA1UHE!TX?'H$@T9GSTU2FS,?>D@QU+%Y4&*P^N\6S(YQP7H74%VLO#Y4<_GM M<9MO=OFR6MW^2[[>5%BJZP4_YO\M"**:Q316&'%*$FZ0U"G@L=:+3?$YWQ>K M1\#F'X?-6TV=R7\YTMO6'% M."/G,;%&]^*'^W+&NF([8>HU,H=LAV@6ZD2FDF*:95J&F';93D@4AKS( %S6 M\_N+/XI] M>5#28__*J6[T$R'@:MS MWD@,#AKO@H/*PXJU1N?-5O5;^M>#-M]5Z?>^=0K*12QEDE(E*";6MZ,'[L9N>JF9T_K3?!RH3#^?;D7:OCQW D0G=KM M 82SHM]PZEG;_"9H9]\;&.6 +CFBV[V);;;I>K=\+G=?MB<[KU*A.-;2Q*9: M(1VBR(AIU&@>QRZI-UB#9QK^6:P_/U7$$U^+;?ZY"/[X\O+13%<3$9IH\*7< MU!,7^"6YMP%Q@L1)QL(#*N^"@_+@1/IQ/@'=]+&) =N6H+ MZI8V#6QJUMQ_.BB[_[+?[/S5HB&D2*XXPC3$BG".6=&*P!!4<\R1A M(DS_G#>87M9P/L2E)G\_"K^[$,W6GP2&L+[&RP[C,Q@J&,5['J;U4S2X/QVH M&\?"P^SM(;CG\9H'P'UWLIQT#ISC^_0._,W\[_V[]C?F'P.6XOV[_P%02P,$ M% @ XT1P4#]!D[ZFA0 ,I & !4 !X<&5L+3(P,3DQ,C,Q7W!R92YX M;6SLO5MW&SFR)OH^OZ).[^?JPOVRU^R9A6L?S[ALC>WNGGU>5+,9N7U?0_ M_@3_#/[T2S&]K*[*ZS7[1_DE__775:5?EC], MRND__CW^YW,^+W[Y-B__?7YY6]SE;ZO+?+'\[MO%XO[??_OMZ]>O?_[V>3;Y MF7,,+I?/G=#;ZD+O[M M1?FO>%D:2BE_6_YV4W1>;BL8FH6__=_?WWY-G$[*ZZWUYO,9C]4 MB[#(" MD$99_V];:XOM]\1]_FI=W]Y, Q&^I/7U7++KM[/,&.^[O13$KJRLW M[1CB[/BWS6,>:[&NZX_Y_"$E1TV_.737;=YVJ13SKN\XLFN^OS$<18 MO.QF%RRX+R9_OJSN5M^B+B^KA^EB?I%_SS]/"C6]"I_,'L+25.:?RTFY*(OY MCYV.]4/'H(1HM<;_6YLV!NIR7/:O'B;%^^N#I;_;8I&7DTY&F?"U P'S*?ZF MD['^V%('W=FNOM<3I=ZR<&.[JO34Y?4Y3\?RGD9?[YXF%W>!K7E M8E9>%@UIE-!D3P/:]EGX.7S)HM#?_[/(9V'W3!C=,>WW--1W^6P6?OJ2(JQ= M;?34Y8M9Y:O97?ZAF#],%O.$CN]OJ:?N-UMO#M?LH'LFOR_#_OYQ45W^XU"' MMI7MN MMN=BD;A==K.[NRD4T,>=AV3?5=!&,T6"4-M #&E3MMX.M(6W?5"<# MF,ZK27D5-4Z=3Z)9^O&V*!8-NGN@8I^=N\AG :?;8E%>YI.C>[JUE8Z[':RE M1;$4ZOMKD\]O_:3ZV@K;O0WTV=G;/-!O_F:ZG..WU>0JV% NJ :+[T=W_W"3 M?0XH[/*SXK:8SL-$>C,-Y8NC![*[J1X'D-;G'KKYI9A=Y#<->O2L8 =?;HO/ MBT/?^[1,1U_9=DW?5Z>C+CU:>?%OO^>+A]G2(FK1PX9-=-[A=]6BJ*VZH[J[ MIX&..MM,8WQ9LH.O=Z%N];TH=#$MKLO%1=BX#O5C3Y5^.M1V/K1HHH,.^[R< M_2V?/!2_%_G\8;9:"0]U<6^E#CKUEZJZ^EI.#FHMS\MU^-5MI7:H7H==>YS; M]26/&\!L>1U8$LSGIHOUU.Y2V2W.#JMUVL-F:M[-")YU9!#.R MC"RITD^'VHNQ<1/]=/AQV_0/0?TOU%TU6Y3_6CH_7:@]G<=? ME=-R4;P-?;IZWL3QX^SXF_N&IX^!GV1(32?R@8J==.Y+V/:J60.G[I:BW7;@ MJ5!6'S8]D6W52+>=;BK*'14ZZ,S;8"L=[L&/I3K[VK:+[?Y:G77KD05/G\3&^]AD*O5^_>P4-\]W"U_>9%_7QK/?YU>%;-W MU=3$?DXB]=[?%Q'[Z4W2R+O[QA[@>/2BO;_^\E#>W@6/J M2^C"36CD+@^R6/?D4S&[4],K6\Z7P1L? AF?L//(@7?WC9W!T6SMW5:V@RX$ MZR2(?_$]##L>H]Q'\C=0AP]4ZZ]C;5?JELWTU_%'"M8%HNMR\;14VI#:?T%_ M@VU&Z4:5.^CDAR*H+0\'#YF>%>ONB\-ZDM_:+,JS+A?[^EZ*ZF>7WM^6EFA5YN^ZV:ZR[03Q.UD^S?#K/ M+YEY=Q#5R%?X9M M_J*:E$U"?QI5[KN3==3JA^*R*+^T..),:[7W85T%W6M1SL-'IIHW]G^DM-GW MD%J>-!W35M]#>'-WGY>SN 6_OWY;!84X>LI:.:@Z:K[W@1[G?DMIL_\AM7,T M'=58WX-X_W5:S.:WY?U%,;L,/0C668QB] _3Y?Z53\S#;+8*9NQBF,=_7=] M=+)'#;U7I1HUG30^P"!71WF1*7^/FNZTA7;60=-]#S#J!-/%Y+NZJNZCD^2Q MP*R:AA\O5[$L70SXN*_J'X!YD<\N;Z,7*.BEDZHS#C=JN>_A?2QNXK=^*.[C M"=GTIHN!'6BS[R$U,S):--%%AV-P\OO[1C>^MI7MN MM3?DF=;OHXL/G>?'/ MA\ =]Z5)6-VN\CUTI35B#>OO[.K]+"P/00F)F+\-'ZS+Q\YU=-EU]=7%MT4Q MO2JNEGD#ZB^?5)<_C&_]?;/+__+8[[MV*RF->?+)'X M%G<2L>*6_J[:GJY_LOG^=)#47=\$F\(_\>?0B>SKIK. & 6 M:( !U=1(09B$PA+$G;!*&,I_!&T2LTI4L[7 3H]:/)^85#&R]%.0IYX\N=-U M)%A;6LRDH(Q[QZGF7$ CC!%@@Q%'H@E&3VFM9I>_5+.K8O8??X)_^B7\9A6" M]W;5XYVI-)9$7[RX?!^VTI>3XX>*ZQ*_W2^OZ/QZ>5M.KNK:,;/(J2A5G4(\ M 8QZO?EMZX(SQ%*4?)O\C]5K136%(2/ 0F.GV:Y5?% M>BC- 7E:*U.606F!HX9!HJWE5OG-6*53?ZQ"QU%C_RJ4((+'E:9?JM7W0-91 M*B\!VD.X@W4S;B 4P$-@I6488 V)J\=LB$RA'?J#=KT)8BCRU:=H\4S-/,P7 MU5TQVVQ=A_G7I'HFG6":8&*@X)08[T70,-8CQX2"! KB/RC8IRR&8N%+S-XO M;HO93N!:Z23[F\J 1@AXK0DS0%,GL/+UIH 5$"2!G>0/=@XEE],QM1N2[L&! M>*^)IY):Z0'E%%)=X\"U9PG\I*WY^2(-VQGSLRN1C,)BW>89_L,(73(&S@AMX6:H1=S$CY;2;&88I]QZH9G1DB.G+5-KM#@F MROQAQAY'KNID,NI]?3J<"K#12O3RL")^DFU-VS==1>0\2=\WW[.4'-5.1JCD MQCNMG*#24HP\ABN4B11.-7(K=SS&9O[TU"8SR8 AFC*#$6 XCMC+>N08(WD> M:T#/K*A.(HR33/96631?Y5H@G-8@"%@!"#@% !"$5T) 7$*LQZ!#U(-Z.@#] M_Z3C1FS$[%H!9"E?S%6W0+=&2%L M%2\H-J7$JG28);3<+\)W+>:W M93&Y>KNX^KVX^US,=DE]6]E,>TVE)T%QHEH"QL.0==U/PEC*<<'89=Y64E6W M6!XM\\T:]G+'V[9U=#K,E=(MY'XS9 MOU$+$8;#AO(3R7,*]NA5F0X8>ULDDQ@ @%G9F8A%VBEJ_#J)#&CC1Z-+- M*U%6NB5#AZAVYY45\N4@D$UB@F(5A)HRI!=]3,DH 8XCH/A,!;'.*S7/8VY M26%*^Y#3WD+Z!F!*1PAWQYA\?INOLCI\R2=/K_8>Y,J+FAGTABD>B"^H($0Y MKVV-D&8F*3"Y?>#G:UY/DK'MCA_KZ+!E:IW'M%7-6;*C?H:8< MG?*?BA/'0MK/LG$Q*^[S\FK]',#F'L7R=T>M(_L:S*36$F#IH(806D2XT;52 M;C1W*9N0^*E(U!?DG9%L9VJJIJ3:V4 F)=&6,T@%A8Y#S[BS]8B4QRF[D_RI M2-05Q)V19GF]^EU^U]B/LJF064$5)4 I0YSE4457;M-C9QN%3.[RJ(&?BA7' M8MJ=DSW^&*"^R!JR^HB\O)>?#QONBWO6Z@I6RIG 1R%)*,><:.XW8#KJ61L[NA# =+7@LGC%(62(["X.KP*,L(38H4:^Z(E2N>3..#".NRXV;* M(&AWJ)P\ORVY-+::ZRA;JV?:F;@@.A[&@Q0&QIK:'V3#PIFTQC1WSYX'=[K! MN#O&+.WP6H/*IT\[%G[W<%='.C\Y&)8OB5:M_V%Q#VM9-X30$S8HRET2"M ):HC=JQE(H5, M(]*0^PM>ZA7N+D*:MG1P2V1G@T"G9@UERAH"$4,F:(+4!=B JW5!%_KHSRC\ MJ2_9[PB*ZD4 7:Y66WK3)("J?4L9Q)Y9IJ0VUG*AK2*N/K1W4+!&V4#'OVH- M1K+>)= SRYH&9AW76L:#()KV4Q&-8'2(&>E0 0: M*HVO7='>.Y'BO!U;:-QXN'8L_$,N0< M6RC?>,C9E3AZ)N/!8,"6S62:1.<]HYA2KCA&XO%^J)=>I=RS'%V(X'C8=BS^ M/;.K:9#A<:UET@8U1 BJXKR1@GJ ZZ0'WH3?G5/HX7BXEBB&WE7#%L&+"4UF M$E( L9/QLB)ACA#L'ZTMJ)*23?QQ]-&G+,88_DBD&,\NOR-#Q$DGG%6*<&:,EE;!&A?&TZS<8J=A8B8>!4?0[V.&,':R5.^>'_*IS:, MX]X80WB8)IYXA1"B-2H:^*1%9/QK2$>,27UJHYT0NKNOT/:I#>(<)EJQF&8> M"L,#+&#=3V,92E+;QT.6_L5X\*F-=D!W1HBCGMH@TH1-E7-&!+ <2\ZLJ/LJ M:+,GC,9/B@YDU>"IC798'BUW]W&917S^]JW9GY[[1<$,6TYH MK8S'%-#GE"0_5495AT FW/U(?%4%.JP)4)9*("2E7!)>*[+6:'0F;VET+O . ML!S*1;QE=]NA&1RHD2'G-(8\CE(H!0$C]4U=;#6'*:'Q(^+*8/I!MW"?DDXK M:[G8J5\TKIMAHI3 3AM! %",2.3$9@IAG[(2@^ M%Y=OII>K'TRY^+Y_;]I9(?-&&D(-L[ M"ANPK4DS&;** T"<4IJ&K59J C9+K!/J3%XT[I84.YC6 ]Z= MN>![>SM$.0;#+ Q#XM@0#X@0]?3T7O(S>2BQ%_[T"?1)3O[?Y;/8[R_%^9SN M(X> !PX*Z"0+_U#GUV>U,8D3;Q2&W_?IOB^GY:)X&W"_>A/D.+TIP[ZYBB=I M?JY_J)%,"2.5!A0#I+PT#$$*:B0 !^?TXEQ_+-EYHM\Q_*<[RZ*.B@K',U0,$A.F>9MY74X:/=5E@>/]?# M1^+IUG; #[:]>*:\$UH;X:%$!"@JK%E?T(02&'U.&?.ZE'PW< [EI?CX\'E> M_/,A .1B HU/XZW>N*W0+] F) M=/ D?V>=3(?14:J\8@(K;ID#=>!3&",F9[+K=";IP\PY"M<3<6?G=K6W? :1 MD!P;BJFT B OH:;UV) [ES3"'CG-XVM!Y0'XIO]56N/4/X>U'>W"Z**_6EF.4WQ5_GQ?7# MY&UYO<]CE])L)A5U"#'G13!*D4%4\EH[55BDO6;S =G= M_HLS2"!AD$-DF')8( [59F'@P*:$(8]0@1@-R7N7U GCDRZ*V66DPTV8PW^K M%F&8 >LB<.3QMGF[R*4EA;Q,< "&!0PYY'I/IU^@ JE(4C?:IY%\GCP>5 MP$G"!>J)^*&8/P1NGT_0@(98*<.8MIH+X97%MMX'@16N45!HWT$#PZ<$8 IP M[#C!4H>E4D!(-BLF$$8DO9,[GC6A9\:DI@1H)X37=U50&$:Q18!S[Y;9T!Q& M]?@4US][*H'&XF]X5; =W.=Q5="I^ "U\T@AB; P2 A7CYE(VB%[ZJ ':K&B%A)M M'+=.8:Y1/6Z(L4_AP0@=4SWQH!MP7_,U( BM0"9LS1P*ICD"FM0GM] ;G7(6 M.4(:G5)S.1;S7AV6:S]KBNMQW40F0)@JWD. (=3 0L,MK$%JVT?$QJ1L! MMW4>'H=UKPQZ5RS>3"^KNR+Z,%-X]$-#F;7>*4! '%38B#$EJO9;(:)1RIGV M"->ET[ I!?&3N.X^_?#RWBMVU7&OJ,.20N-%F,G$R#KC":&"H:.R=^X8XY8M M;TO/7FY]GP*P.GS'/W8-.KGA#&B. ?&$&&08\=)2;VH4K(9GDOVF9X94)Q3) MT1O+8T<_%)?5S;3\5W'UYBJ 6%Z7Q=6/28G5MJ3$JT%-KW:N$BWHVWL7,BZX M M19RPQW '@)@*I11?#AC$]Y0X07-2)[4: :"B0,]9L'TU4'1D JC MC6BD33I.'5%8P("T'5(_2S[04S MP@TDQ /MM H0>LW,^H*3,0[81H_.]W16&O&\K29AFLQ7G7Y7+0I;SB\GU?QA MMG?.MVXCHX'$@"*/((".Q@PZ$-4X )KT!/"(5+!4$CP__NP)WD&G; =9$TX[ MA9U#GG+,*12(<&M13-BUPI9SKAI1MY\1A4WDKIHN4?YX&X@Y?Q.4CKWQ3CMJ M9(9+BS$*=C_V6A+F5)[7RCA 2E@<;!T$ M# XVL%%KZ\-(RFS*5C3*E),]\>5X2/O7#D-7RT5\4#T:J*::QA#?8GI9'N5R M[X['._KTJ&\WT!U;M9-)#HBTGNCP7^H H9JL#8/E_QLEG3HA'DU,Q'8-98I" M("!GSCDN E6I9O7@T@B--=4.(^DX M\0ZM[T!P)31MM%,V=!J_K:8W83K<73S,+F_S>?'8T8MB5E97'XII\77WS;*& MU3,%I;$8$ 2T#*R3BGE=CXAJ<2:/8O4L[:IWX(\^>]C=G75'WM]'L;VK%N7E MSEBA5HUD!B B &<& 0(@B ^ U*M94()T2E['$9JH)Z54.OP]$$O=Q3>Z_\]# M/@N_GWQO3ZIG#62 <&8A45YY$>&"\?1Z/2*IDU+BC^BP:A2$2H.^-S*IZ?0A MGQS/I;I^!A62(B9*X%A8"1P)"^]Z/#HLQ2EKTPBOD8Z 2D#!ZNGCDJN/$( M2@D#]"K\B%9*AU)$"7["L]%U8,?A68LH8@3+(2H1V0@/+/7 M!KH5\O,$-"G(#I8$:=E)\S"+<#6FR[/R&6,D+'5.2* #5 !#9\$&(D7/Y.9P MJF"W\B,-RL&/%-I4C^C$BD4-DP. MPS03DBBMT7KL%%MX9G>#$^7_W$76 \+#96*[C+K-_$-Q682>?YX4[XK%&IA] M:]&>:AF!6'H.# 4>3&-^RVKV/?1T#V6> M%LL0Q#B873&&&VN.J'" UR,Q%J8D+!NA'=PM11* '(H2%[/B/B^O7#!4IO,B MK(WO%[?%[ <8]C"E0>V,$V(PNPUY9I;>AZ;"P,+R5(@)X[=[I ]"0& M5E/#*H..,.DAQPY Q*%E8IT<+(Q%(:)# M<>?]_?+QP>G-VR*?%Q]B"N/WUW^=K_(9[B'/WGH9]!()'M0X#3TPR'I*83U6 M%#;;A#F#@%6U:X$%6S$E/%D G6*Z5 ,^DM577TM)]MB99X7R<(,H$@[!(74CE+MF#8;I0S2%#?,:-7< M9%84Y)_> M#C]\5K2E=":0I) )HI@&Q@#'-23UN#!-,GM'J*3V>KZ8#N\):-/\I'%WI4PI M[ZF5TC." 8586EK;=%RK<7^??HX3GL1-E2.L/1 M_@_J-O4FYB/TDOAZ(>:.XQ0G[;C)FU0.%.L5WZ%/I-?5C)I++R]E#PN-=LX["D4] M7FG,N>6C[=(ZZQ;9$VO=[ZKIY;&*]V/=C#AAK*1("V?"-$+!W*BQE$"A%%M_ MW#I1,INZQG:P/:R:WGPJ9G=/[7W>?4VUXC@\I! MX;V#3@"HE:((U3'Q2BB7$AD\RFVI<\9T ^R _N"'NX=)O%:_O" 1^!YD=%M, MY^67XO%)FG=%V+@_Y=_V>XG;M)0!&X;."-9AR37>""U4C:_"0J00;80F5!]$ MZQ7PH0CX(28FFQ97+I]-R^G-_,FH;'%=7I;[U.O#E3,/((3(0X&H\%83%"S* M>M29/:]C$#2 -N69WQ&& M%_; G&1,AV+*[^6TFH7NO9F&&5K,]ZTXSXMFU@J]]&I:2PAB,HRG/N;5')&4 M;8S_%.M+(J*G6TW"%CMYB-F#+ZK94G*+Q:S\_+!8/A5313=X-5T$;$-7;AHP MJYLOR#2$"A%.E%-&>LU 4#=K]*A-NMDG?M)5:P YG"+ >GK5:H<\5#6CDAMO M%1380&VUQ1!OYBVE2?<#VROT S!OH-#K#K!^9-?0V=DNEEC>%HOR\M$;<9:I MVA 1"#E$C0/,>0Z%!6N)2,H@;91;: AG$!^)2)]2EX=?,YK=Z4, .05 M%5I+J;",%U\WX#'JV)E%_@S.IZ-0/B67FCW,C MT]$/I5J$ '=QK@CI&+5>V)#TN@HB$]&H0Z>3T54< DA)3 M"XCE2-5;/+=IK^ZV]V:?&9F.QWE0?^(&E/G[ZYA]VD^JKZ-X]6'3F78NQ!?5 M,DF#L@J5MA9+;*% 6JVOW3 8KTVT;RZ113F$$"/267&G3S&_3&EY',;#!AMD7LK!H/6,T$A\19:#"WPMD[0PW P MW-WGY2S":((]>[/WDN[V"IG64!M(L,"$8*>\ M,-C6HW/6IM@7(SP"'!?ONI#(4'S[2UY.(SSOIQ_S2?'^^H>L[IN4[GOXUZR! M#'#.! ?"2(B!#[-.^=K(P\*380X/Y8J/T^(FNE\^_5RT[$50 YK(7\IYD+NO M9K9Z^+RX?IC4*^H'FDP^U(,D1$>-HZ*BQW* MY619GY8!K.%/$SXL][+P4-5,*!L37 %#/3#20$SP9LYIA8>]C_-S,;%CV9S& M7+'%YT5\1CO.GXM9<5<^W#6V6+;4S:CV@@00A>5 N1B-C39CEC[IIO0(#SI' MQ<>NA3,4(0-6LY@LRQ:K/Y^@L[XFWL#?V+R1S..@1E-*'38!!\8](KI& 4B? M\N#M".V; ;V(O+5:28Z:M-1/Q[#U2["U#KOU1=A6U&O28$:BOPKA95)>2+R3"J@:'2I0"B>;;[T_ M!2=[$,<(.0Q*Z>5<$ 2S*!1^@<[)%. M/2-_>JMBWXL91]D9^QK,)$$26D.0MLPSP8"JGP]BE&B2;D*3\7'3L ?BH3-G56= MA%1G89^P$EB-@$..":^EK@_6*>8TA8(CS,XRH"NP-QF2_I[$P M/Q4!CDE&G'58&4;-9I.@$ SCO3G+(/_N4!\L@B'_OCYB4I?_?"AGQ0_Q%T') M:!)LT[R1C 15F6('")? Z0UIKY&P7J;$G@X7A=UGVQY'L+0ER@&#*FY+(JK MN0\H;HD(:LK(YJUDUG.FD5>>>0T=M,SH&FK&@]EW7LOAD%SL30@G6QWUP[R< M%O-YLJY/2QK+%".&>16L M16:P%-BXS5TQ%OZ>$F2*X!^=4!Z*>@4\.G>G=5R8+" M"H5VCG,NO-!0$P[J$6K>+#GWN1BQ?=,J ?CQ*6R=*&H95C1 23DU4,)@L@NS M,:"X@DF9AE_/V5L?O.M-!H/ES N]C_]&S^.7?%(L8[@#*.5E6"*6KI_IU8\? M/"EY4IK9S\WG ^;)7G(MT*Z,UE&+;&AYL^J<^^OGW;X_30)FCV3I(=ORX3A%AM$ ML25 8L<@0^MTCDQ8Z<\LA+*7F7!ZL;SB[6+SN-6IMXL]'OZ9!!)[US-$@2:J$4PH;6.98$"9;3 MD-&A]TM)!P;.%C\9QUN*X>>F+*":848=C0G!I%64(U)CQ8.=GT#9UGFY5Y1U MTZN?C;#MA# D82,Z\5W,\./C,=[T:HM='O,V3*KYPZQH<#:6VG3FA>(!+.L) MU<(39+BLI[@D@*0$L\B?1-D>6 :#N02CUW+UO +,SJ,89X;.(# MCN678EMFW;9-9"SH'=H@XAU#EG$'R.8$1GHD4V)+1ACS.3B3>I;'4&O4QX?[ M^\ER0<\G-89OIM?5["YO^I)MLQ8RH)F2% 7C34*,F'*@?EDM (QMTOD^&!\A M>]DH^\%ZP#N2C_?HRJMWQ8&,5,\*9XQHR"A!'DM&L95$R7J=5AZI,WM]H7-9 MO[SNF ;P<+0)8(?5O EG?BB9 0* Y]Y"C<+&KH$DM':X*H%12BKF$6Z!_1,F M!=U'M@S]OM/2C3A_,WWYY/V//3S-BT\O>]7NZ:?=]3/#+1=*&,*5<-X*+\DZ M>);CH.HTLB5Z'O^G ]$W/Q;,K( X,-1H0AD0'!@DUCH4)TR[%)UVC#M MU)^ MKDND0#N8>EIW4SB*C1W"$:L(X$M\O7HB"%GEI&[6]YT NE@R\[EY M%LLDQE(B:94SVB)*@* U5M0+EA*_,<*HTV[YD@#D<*?9@;;318 H-'U3.P,/ M4F1?M6!-2"\,EUI)Z2@@&-;Y>3BC-BGD9X0Y-;NE3(? #N[->1NVW#?AQT8N MG$WAC#CB+*=.HC WO*&,;M0XAO! -SE?K=_F6!P'/!Y\%@K\TNOY(;#=5[.O M^6Q?,J*6+66&,R:$@P 31'2 UKG-;!' I"C0(S394PAQ,&5JET /MBS=!MSF M[Q\6\T4^C;'G^U:EYV4S90764&&E%.%*>2E][:%@'KM!R3-4I'5ORSX^HI1#1@"ICK GYE+:BB*'0WP4#39Y>N(70Z#+\J;J7D(@IM>?O\TRZ?S_'(IW.G5\F^3 ME:@WCT(N@"F[1.CM#U-11]1R&L MUZ%4!MM.0"6Y@Q+;\ _P;#,F2ZDIH2DM7:A7=F3#V%@$X08[&:D:O+.,TB+9[6R!@! /HPB2%1 M!(:]@.O:+R8HY&=V:MZA\Z8;0$] F+_EDX=]0://BV;!I HC8LP2SS"6#-GZ MM1XNH'#VO*R1?BAR#)*GB_E^J62.(=9[U9.@T&[I7[NH[R8M99[$%X&(\89K MB!B1QJ[O&U=.ZOM MN=TTZHM7+>R_7@0S5N\8XTAA891E84E63&-F:Y7,>RT&O<;PI9A]KGHFV)"" MW^TR:X?Z'RZS=EX8R8FW05LD!@L/H3!(U%:.YP*D)!P:H1I^0D:/0GX#:OW/ MQUGWN&-W2,??%*]E!;-;,2 0&3RE%RJ61]O-AR/1RO:H0IY72"%A_ M'(,SH92S&$$J#0;,,T/JU)/<4ZA2-([V%O#/P,:6B(^ 6?VMG\W.O2U'.KX_ M+X!A6#'KZ-I%$38?;U+6RQ$>N8V H3U(Y63^GA.[>%9?O^E0 Q_%CAH9U$[2 M^(J! $!@HX"J'Z,2(HBZD3.[9S=6RRO[QE,"E#84& "]H(;"]0XKI#,FQ?B4'PS&[)'BO&JE,4!^##/.QCZP[.=]ZVWUL^0T Z M!@&B01EGP2"-;P/48\(0IP3YCX@9Z2)]R8UD, ?TE\;^'KY>]K1<)H+>$^PT M#3C"2@;56N/UV9-0GL.4F)AQ$B-%GB_=H$?C_U7X7[1&MA<6=:.<< M8)PSP2Q%KH[T%]HZ=&8&=.=L:JNGJJ$7RL)E=-7CTX M6#FS%&+IN(.0LIB$B2B&ZU&CM"1Y8]XXTQ>\SK$]/:..8E+FHX]:(L24U)!B M(0'9C-)Q?B8&6Q]B;\RHEA@/Q:2_S*KY?!5ZLX4Z:O-\2 .%N%T7\SRQ?))M_MB.G]\HG=?D-*N.IF.V2>E M=2"8N801S#VLQVBP9BDGV6,^)TPG2E>0#N<.6AY%A@7O]WSVC^))S_?ZAG95 MRFA8;V.R<\ UX89R*&"M,0:SV)U9%M<.I/W"6=01M(-M0L4T8# )'597=^6T MC.-?E%^*PRPZ4#,3,&RSD&@&B8*:4J_\9KR.LI3,>"-4C;NG4K?XGFP?:[-_ M95QYKB#7V'"@*'=>H-J[:AA-BH\=H8+3/6=2$1V<)8]1N4UX\E@ZPT9S)(CW M"(5=7E.!011?DRJ<#N9PJ-4?UL,M1IOK(VNO>#E] M"*OH>CFMINL1/'DPS'T+FWF0Z*=*F CO6N+_4<>*FM9H0YYS4@;*. FJ2PAG;/WOZFA:C MHT$J.F91;IUSH)V+&N)]DC8M4Q^8P,]@"C L\;'"XR3V'C>D0;#(#X4(_]>E#>W M<4)^*6;Y3?'N(5Z6>'^]'-F3-++-E\'C&LQ8,'HD-@(2A@FD0D N-^@0?6:/ M%O?.H>H$0AG@?GSH_D7H_X_?V_@J_+R>+O/B\L\WU9??KHIR-5/"#\\G2/@H M6W[AGD7X19E,.VYE3,(E$28"ZVA46:*0T,QIA1H=8'72=5M=/BQORH0OVM'S MIT4R;2R'" +M#/'6:8SBDUJQXQQ:1%,.\$U#NN'%Y\8Q@!Y%T%')F&4+QRJRI!R/2WFD8D8W0\::0!F)/C'#31;GX[LO)6O?; MP83GQ3(+E>)&>JV(CH_Q %@W7E)%!TT6FOD#$@$KU?)?RANEG&HT\6[_&[7 MGK"M:,:=!]8IISS '#!$H[NF'@1E9Q*2U24#D@#LE071OS\+B])2$$N7B*D> MIHO9=U-=[2?%WIH9A,8YHBF.U[XP1(K$QUM70V12#1-E]:HXTB6>O5(FIAZ] M"J"4U^7ELK,-]H\==3(-%:."2<*)I(88"X"HA^6Q3+$QVP28TOYC"@O +-8A7%IZ9V #&R&(WB*^3FBX*(NB9&.XA"D M,.''][-/U==M>=+VE,XXEEIA196(-RFL0M[R]5"PTTE/H1\15O2:&'$TB$/P M8;G1O9]=S*HOY?1RO\:QO4JF ''".(9 T*X)@\"C6IO"$) D/^79.2H[1'(( M>EQ4\T4^^?_*^X/JZ+8*&62<<..\]Q10"8!SCP.22"A5&8*E4=>[S1VXIFD@N.D.$2&Q@@B0^@TWH0D+.D\.ZSXHTZ&)+-8AO] ()T'G&!2G[(1#$E2O/:9.A>[@;)7AORM MFCP$@1(!:M8":]H?6A/':0I&@8Z4P=C)TCV M'O@R,_FBN*EFWP_&OFQ*9@QJI+17&FI I0QVD:\-Y'B,G_3\PIFZ%%, [)4# M'^_RR40_S,MIL?4^Z8Z2&8<.>@PUTQ![[(0U &R&H'R*6QF=G6.>#N MBME-V,#^,JN^+F[C\X'Y=/]ZL+5&)BE@R'.J@*4@*,OQ G4]I'CFEL*)LW,[ M=@=DO]SX]ABZN8KIW4^,%\4S!>/[-!1+1#7!T8#:F-94>Y,2*H?.SB/9$8K] M;AFWP41NLDH\+9@1 $S0?IW@4'!KJ/'0;]8[ZY.4AK/S42;CURL!+AX^3\I+ M/ZGR_;;$DW(9HAY"@CWCX2?-,.(4;?B+2)(!<78NRE3X^O4Y5'=W,3JSNOS' M\J;D_,E5R?V>AST5,RX8# 3GC&,1MKB@#^-ZRV.&NY2GEM"9>BH[Q+/G&S?S MQ\#>XDI__Q!E44POBT_%MX4.W_2/';QI7#^LCA I1075@D@E"8*DWAZ93[N3 M@\[.K=D7K#VQ2(6^7L7^^DF^:X7YH4Q&--($"""U<\1H[@RK]TI&H4MY+P*? MG3,S!;J^PIQ6OC)?SB_SR7\6^6S_K2?#/.L MX27!(4:XSZ([4",S0C&'*3#86"@18-[Y]1BAL3Y%:Q^1LM:5H*L^0!UD,K[+ M9ZNGGVRQR,O)_-5/SK#666,UQ80+1)%'SO,EQL(CC6 C,Z.?$0;!%.^O36!] MN?#Y93E9WI[]O#6<_&"=##&C#(4:.R((-(Y+*];CQ%BKI-BQ5S-!&PN[Z@?6 M9II3.G7^EL_*V+T/P014W\I]N::?%\T$CNL,=1Z0H$U8*?4ZS6@8D=+BS)Y= M[$"R5:> GH(BMKK+RVT7FG<7SBR&)#1-,0P:HD+.T!@"L1J5YR@IF_WX:'*\ M4/>PXR@DA^+'Q:R\6_;R]V+'[;4=)3.C">%$*X 4 LA 20!=CXBJZ'-QKME?(. <&*N"=@6$:4 $\8?7H2-H9\PA7E30! M'V#+48@.QI2TC#OT1#:01C1-<:6S 5X+EM4LF";\"D!'P/,RKZ-Y<\@6C- MDOA)]NFVT/GT'^^O/^93-5U4T[+:N17MKY!Y S@4,JR>7G,)-5 &USWV0)Z9 MVZT[ 58]H'LT'_[?C]K$'IA\FE_E^ZFPK6RF(6%*2TH,(1 I&J9#W4^F,$I) M\?5*[)UT%G0 [%!;3"N]9,OZZ1D!&BLKM%>$ &L1K=4W%K2N%!?LB(ZQ^]-( MDB$]#5$.ZA_;BF? &T*A4S+Z(Z'$&CE7CPS2I,O?(]QA4D2[ER5'H3D43SX4 M7ZK)EW)Z\V.?#]K'>^ME2#I(O0Z:FH.>44>YE/58'5)GIJVFB;OJ#]B3&C[U MVW%MK9['-^4QC6>CX6W5,RZ??\6WGW<*>K MV:SZ&B=&?A]^L]@6P'=,,QF3P&%J/>(0!#0H$ZR>J5S#!# M42\Z.M],YXO9,I(UONXW_QB$EU^]GSX]B=N6L+UM$QG$!' @F(<,2X7#6F[J M:!$N)$RAW&NQVI(IUQ/81YOR/_;'3ZIJ]F'[Y91]Q3,BH$,,($H%YP8!:U!] M_,^=P2D'F*_$9WP\-3H$]I0;WC)%4#%?+$-"'I],:[G?[6@EDYY+Q@@A'C&% MK0I3HL9!$(92#B5>B0N@G^VN&[Q/P;N&Q,I 6$DM(T[BF/]62<@BK$]Q M'KT2A;Q;YK0$M*.=*=[OF.;31?ST8S'[4EX6RRL?^4W<+\OJ0_'/AS+T[_=R M&M6W9OM7RT8SXQ3@\6(8<5H21P@UFTEA:-(C6"/*^C'8+ME,&+>U=L?A[-5O<=L.^IBUG-EC/00.PWL4KK)A[ VJS6C! 4MP+(\H\)@&L^+??\T7,"ET6\W.YE0*!<#;,4@F(-P(@)YU=0>Z M9[;1L7%_\7R?UA%'C[A_*.[S[\NT%.^O+V;E]+*\CY<*WP7H/WTM)E^*WZOI MXO90G.C1[6944DR5QMQYRIDR8=UT-5[AYS/S#J629DM\X%#0#QEVVGA,\7K\ MIZ]55^Q<-YA!NA M"^YTI$Q!_12\;,BUS$KKE.)AEFEH(+&8F+7/R"%%9(H+M[W_K%KDD]?*GY9( M#NP%>UIY^+#PP9(HW FGL=Q.<)<+Z6FH 4-'+]#A&$:,,$Z(>FR>[@?6H+((IF9%'2I.CY;J7(T> >1J*Q/UM-(!LOKS*XAIHNSZA?@TRPN;QL$^^^HD6F&8>"L MH(PY8)P/&C2HQ\>43$GW--*SC'YVHF,1'9(Q?R_*F]M%<:56L2E/0^8.,&=/ MS0R& 3NJ>,PMS#P/QA2N\5.:H;->@HZ0^A86=8?N4&QZNE[NH<[38AFV,BR@ MTGL9^JT\IU3R>B30R6%/30?Q6'3)DP0H3T&*W:_:[BF=&0F\D$8C$.^/ Q1& M4V_CBD*0LAFU/L@,<_%S]T*6:]OK=GCY&]S*!M +2 DX$0G6XN072-;I:U,\( M?PRZ7,+=)&7\OFI9,)BDYBT,6TN"X7%Y-\>K*M(CX+6TSG*Q)-KSX4BW)6Q,VZU?[1HI5,8P. MEMY @R4,IJ+G;OV2!+<6-:)^/UAQ!C9(4^,PVHU[X\SRE]3"B.,7J,9J74(9?30#!*"SF MR&.HI"<,05P+AWCL&@42]Z6$7P=[Y\I4T\6L_/RP?(,]R,H$WGTH+JN;:?FO M8M\5[4;U,V8QP1JAH%8Y; QUA-%Z_)BRE,O9KWR=:,R,%^[-[G'O?5'P>3G[ M6SYY*'XO\HC",J;L9,O IC>/8IDWF/?[JF7.*&]I %=#'U\") :NK7PMH&.- M'GX?;K1-=(.]]3)H=-"'O<=:"B(@Q8BI]7BE0/S,SBBZ$7W5'\"]S^"_5-75 MUW(R.=FDK3L0UM7'R[AJ/B^>:D4-9G&K=C(#M2);(:/1EL_S8SW M*OQCO?2.H!CU3)U>W?N1D'O2[,&=?O%XALKU"AKW@#&"I M@%.$04*$L/4(M1!G=@.\)^GOF.=)4 \VQ1\]E)OUZ:>TB3!4,#A,XC!#15&'/.UJ' 800#?9"E UB')E 8>E'>3%=A4)??/\WRZ7RR M%-]?\G+:4!<]W$A&*6">*:<\(EZ$.66\JE$PS P:L_8ZR=4YR$-3+=7$B?>1 M':0&:\YI3%8*I%F/SB)#&GECDP/9Y(I"T^(F7Q17GUXEDY)P':.R0Z3ABAML MA8="8RH+=^SQ_,PT_%I_R;R>VIEAE$K$=88>>4!0]:1=:"AAAJ! M1D$2@XVUR0S>5RWCE&JM"= &"X0Y#)K#9K36D#.;PIW(O>H-WB%G;(R.J::K M;$)V+:7-KU>KVMLR_QQ3.8\@/W'WT]QZY[5W()CT@)*P@!JUEHQ@%.-&C\CU M%Q?W7#(;F32,B#M8/V-0:F*UU=Q!1Z62EM7CYX#A,XL%ZX0)S]]A[ 'GX:Y+ M/^MOA&;]F?L6P^:*#T&VLR_%/*@[ZO)R]I!/YFHRJ;[FT\LB6"ZV>OB\N'Z8 MA-]5#T_BQ[8')W;\93$?)#0PF$G2QY\L%PYM4(5F4"_Y,)&,'3+M90SC:<5S M=/J1!CU'#"MU]5\/\\7=]ONZQS64$8'#BB$](="PN&88Z>H1"BU3+F>.T.?> M#P$'@7[D*VK\,XCY4=/J?AU]\1590 ]+""Q$/#YGSZ MHUP]4X4R;EK7'W5.YOJC+":S%- X[)#ST"K(':[1PMP,>CG^YZ3PD:+H;K-_ MGM\J=JR(?VN\R^]L(4/<6 D45%)2986E=F,3A#'9E".K$>;4'G)[[PKSDRV M?YW.BGP2[_74)[KQ,*[=6K>KC8QKJF1\=MTS:0$&P->W%V+2+GAF:;,'7M8Z M0OV46^_JB363SV;?KU>GAVWWV"TM9$HP2) W7#M$+&58HGH%EQR(1KZPU_-8 MW?";:3KF)^/<^_LBWC^8WL2I26>B\8 P(P91D'B.E18V#8BYEIQ4_ M/?&)H'W^"LJ61C%%)&&2:6F,0Y#Z&8=4H:&\;75!Z/7[ 8]1TL'NPM)\ MTHN+6156T\7W>+]_D4^O7+!C[J-#,G\9#]+ CVRYZ44CZ3LP)+H> %MXY_;5BVS4C #G46$AUF&!*!< M;&::27H,X/4<6_2\]!V+]M#KVD83:7=TMJU:IFA0B1U'C#-FB7 "F/KD12G% MAGW/\U3&0A_K4P=HGW:_;+T;9AP;@*4''/"81M(X:-;)BH6&G@YSH^'979=S MHE02W*>*K]Q\'!3++V5,++C.QW=^895!%$P!S[1A!'.BA"3K[*D20=(LGK@G MS\ J8?RF\^N3S;4D8@:W(E();(#$+\Z%& M"@MX9H9<)YQY[CD8"OS!G%>K ?DB2#&?O!C181[NJIEY2H'A81CI M^F%8B2%[_IS[:R?;$,38SL6.!# TX58WE(\AW(Z:&6;>"X\5$])3 C$"N)[3 M.!@6*4_ZC='F/QWANA' P(3[&(1:J.G5VR#W8]:Y_?4S#"%#6DI-,:<*QI?: MUV>K0?DT)B6*8HR.@I.1KU,Q#$S!'7 =K>MEFFJ!E;!AT,0+8AG1H!YML'-3 M@FK'Z$4X&>FZP?]D_JI.S(Z$5C,#@>=>&V0Y)4A"[D"MB1!@V)F]B-F'W3$< M^D.S=*V^ME\;FS6086NA0H0!3L+.P(QSDM2CEPRGG 2-T P9A"<[N-FI( :G MX4JI3:#AW@8R2*C%3##O* N[!45>;A03Z9*-!(9B7'NF[9Q1% HBC/ $ M ,%-L/R5J,Q.*K5+*Q^1,GX M4HJ&U%M%$'4;K!!*\9"-4!'OA#5;EX$AT!]V$VHUHK5ZURU)UXUFS&N(C006 M"((A0!9PO49)&IMT,V2$6OI(.'H<^".FJ/L6, QB+Z?Y[/OR0?%W5?CM=!%D M$_IW\V8:9!NF9;<<;OJM&80"(V*TI( Z&.:^$*S&V7I\9A;!2$C>DW2&U^F6 M/VZ"BFQY':1=3"]/_EA0#\J="2HTB!F%@C2< MKQVKMOJ&F6LN2/-:D9Z\/$ M-BB K3 />(=EG^C:,C(P_<.6L^"WD*$8HS$8!R" MI8_NQS5N$.&4(*C7IE >R>KAI3"X!^['P>QP]AS/XTZ_)_.2A34 4.$0$APS MQ>'Z6=*@GFB18B*-,-"EOW7Z-/(X,;=_B-[9DLN[.7MWM91I: @$&$$3]&A* M''+U70]I 1SX9LTY\;,CQ$_,P*#?!'OD(>PHGR?%>J:U9]^V5C*+PNZB*#&6 M \<WQ>QQ"$?8-,];R&)Z6T&E8=@ (YEPF&UFI4(DY:2F?4JQ5T7" M?I%^?3%:TG)O-11A%C'@C21:;&82XC(I"AJ\LD._5"HE03OD@=V[?!8=_U_. M\&Q.0D6AX10[[I#6&$"\/H]0V%![PCO_H;_F81&SEO^OZO-<72[>7X>2W-P& M[2OLANN=L/W,3FHWLTQ*PK7RA,>+DC/PE05?-69.=3K\A]I? MCLJTNR?!*[ T1K(JP:3Q7EJ-:Y^,PI+X,[N!W0?+.@-W* KMF!:=K6^[)A2U MCEB/O3 :8QPV7VLV 'N&ACF&&I.9UO&ZU@WN0VH[)W[ZN7L=!UN$@=*2"H.@ MC!>,S?JNJ+*6@497QOH9Z^.#P=OC_-=!QX%3FUP103;MGGX^JN4,.>695T@# M))D' % +:LQ0VAG,*]-S&K-GYV/00TA@J&WJ<51-/%-'T+5]LYD4W'/I')20 M*8>L)J)>2IV!R/T\VE(Z5WN'?WBBFFW9_'[M6,T@-X- "J#F#02"& ML7I"NZ!CI"RIKRS@)YVF?:,_/$M?OOTP??K$X!$,;=5B1B74PH49"S2FG"I, M-_>:PD:49 >\LG"?=';VB?P EL"/2?+?%8N3V0)_J:JKK^5DHE[F[F]E';1J M)XM/'DNME;<6>Z>-!6)USUP2++EH=++>EVVTJ_--EH8&M3-K()>4$\2PYYP9 MB#&HQRZL&/3^0/_+0$^\>''@T37NIU@$1G,(H1\L%.S^_N\W(6S_=?=MF7TW)13&)@U+Z=IUD+F3:(!24(,L&I ME(H@(O5Z_ @X=F:W?(:A7#_8GV('>E2P_<,B0O-D,JUMO_"KY9#>_ABIMP;U MI]RXD.=>&J\]$8(KIPFGJWO0$FF-<*,3ZW[PV".J+:)]%R3UZ6LQ^5+\7DT7 MM_LVMK2&,R 1=9Q@)3@$5".'U@XMB0SR)B4;[*O?^!JSJ3JA2(;:&-L-ZC^+ M?/;I:]49;]?M901*PF(Z2 &9(]@C8F2-C83\S'*MC)&NQTEBQ"P-7[_O,M>1 M+6;<01FTEZ"\ ,3"'Q9@4>/#,!PV8KOKJ8=8I56.#&>**&*.Y M@5@;JH,ZS#8S67N8DF-MA-[PL3+U"%&,F*BA;+=$#64S$+ ARGO %7:"$1T@ MJ=$Q3J6%.,DJKH.0NR4P"--TQKOG[+7J+X M#GG*%8H17J@=(V53Y'%:Q\\?+IW($H4HDP8KKYD 3%C$:.VJ$XS#1H=T?<7^](PMVPIPX@A@;EWD!!N!+1J,^^E N[,0CAZ M84IS-G8@@<%N&,WRJ^(NG_UC_GMQ][G8YS5Y7C0+"B&S$B@"C$?( X9J(QQ+ MS=R9/?[4F[R?7QE*@WFP(-7J>O$U &>++\6DNH]'R0<9M+-.YC0.9@VD@(%X M\4Z';:&.<9 $XI33M1$>5PQ%I:[P'G0QBN-NN!@]*9HII0(Z#!D&N46>2EF[ MKK'2Q*=D/AKA,<*@B]'Q, ]%'/,P7U1WQ>Q#,5GE8KXM[P]S:$^MS"F'-->6 M,:PPP=!86D\09:4X,U__4'3J#O&AF+7,V'UW7RP*=3,KBF4^FX/$VETILTIB MB\W_7]Z7=;>-*^N^WQ_3!_/P<-2;,;1W;*8K2&=G%]_ M09F4'=NB*(*3F3W$$T&AOOH %%"%*F8YT\[)(CL!J:0TA,XLC>50O.H,\,%R M0Q0IDIY!;+5%?0)\^WV3;UMR M[= T"(H)1(A2C@!SOKCQ7NU\-37HUSFT:D&"Y@QK@_4$V*6NK_=W^U61&^:Q M-[.E?_KEEP5KHR$J 2!",*>$1497ZX;6)"F?[@1GNK$8V WZ$^#DHVNQE_$O M-@R$>PL8=<8)1I&BR&M62:N(͒.])),?BVN5(CQ'<,'*ZI7$B&+"C1*IH M)S&@ ";8.EV=+7GF92.'Z=@1#)=E8VC\M@ $\0)+AQ&,O,6PL"[+J\# 2)JR M$$W0%.J)-ZUC&MKJ8>B,(7F=)"?OQUU,W"X^)B#GH6'< :GC[DARCYFJD,1. MI7@/)VA:#]^''A6D(3[8*EC!O+),HFB(*YI#29KLWPBIYL%!"WBG*@X4UH:>46T@)6T#/"4\@\37,4ZT?NS MM"&=P3ODB'T;O"CH=?( [M)7!(@(,5 "#5PVB(IRSQI43*M MD_* O;)QVUC'^2!0#^RO*B4X[Z(J'PP:>F:90Q03XI5'QKMR1@)6,^'G9>1U M29Q. !V''G_NOWY=+6OKCK[<($CAJ3*(^4(XI.,.BU<@66Q<2JJ7"0;Q]$^7 MEL .ED.HZN??B]6^K%JUS3;?SI2L/=4H2".\QX9ZRC6%Q3U0P"LI.6IF3"<' M[0R?MKY[%G6&\>!,JC^!?_Q8H)H(A:!F#EM(@0: D$H2Y4'*_8S+0W$&*-K4 M(TTNAW/(S@[S^^ MP1C^^<$ E(<08X9AA(]Z;"4I3(5;;=9ME#>:1#OYL,UOJ&@<5- M+%;F\1TH+$XF3S ;<LYHA0F0P!E@2_DX,61F_N.VRCU9 M+ZX]E$/M@/Y>;);%HGWHJLFW==Q_]FQP+%H*C)JBK)F)WVA)7"63Q$;,ZYRN M(WJDPCA8=,"7?+/[F&WNFG#C^N( M',DX#G9V^],D]W[QXUQ]]9<;!.")1E89!#4U0@/&RWOT43KLD\YN)WACKI<5 MIB660S'ET$>UOOE0J&AUWA)Y\?F@*>9Q('#.9-Q&,N^-QY5L"B:5L9W@#;B. M>-(%E -M!1X.%?1BM5A?9W]^R;+=F_7G?'-7'B4?(KT_YO?/O]8=@_;6,^.! METQXP^$C5=HX8AM=@AIB1O^PO/VR>_?YK^U]^%?CB?U)NV"E5)!QAH%&)HX$ M+:&IY/6B65'XKG80W[+-IWS8D=M8W;4S?!JHXY@$59&RZFRP,8.>-@Q<*L0H M,M$(HI!'"QD>#2#'E$P)_[IXE_%J*92(ZL@<*FYJMZ710]O G%=,6X@.1]]: MQ,%3K7Q.2CQHTO#7SZ36P(Y,ILLI%&@1MT^C/>VYBC83(%@>Y8.B6=GOSG8I MO3M]^Z7-A6 .;G_>![K_L5PO[_9W/VVP_HJVY2:RWA3VZ:HXPWERW/YJC5)M M+.9<2FDM!0@A3.YO\0H*K9:-+E4,,82W/^FF4HO=9Y?:&.=>%"#A2C-#+!1* ML.+6*/$5(LCHE)/-Z1]\-Z9#[8#O&.-Q%HV30KQ9?_PG+_)>-S_S:O"N #!' M0C)BE?=8".I8><)>L^\:PWS]*A7E%WICGS'MP4ID"0T[B=5<75+ M>.AUI0&$?;.["*_VS+Y_^K4%>G($+*JI=,:_X\N")U8::QWPAC&/B 385J@0 MPU,N=T[?&= [_=KB/#WV+;]U-_L=7Q80!E I) AFP",J #6N0D4RE;+V3M_% MT#_[6N(\,?9]_))MLD51]"2=? _O"H(P8JSW@D"LB(\;9 6.(Y(VVX&]GCQ\ MPW*O- ]G#A.,W$.5]B^L(W M!<4,U1QC32T T$$MG*KP,"3)^S;]LZV^V=<.Y$F2[DS%Z(O?%1@0P LD*9 > M,R$=L<>!6"3QF_6IUB#$:P'S%*EWI@#TI:\* E..N4=$QVT'588B5EF$%F,W MS,WR.1.O!78[R MU'C7M#QSJ_<%)XB2UGF/L9#8"B0T++%Q3*B4F+WIGV?US< 4J*=&PPZ8%[Q& MB@# D:>,>8@LMJ9"P .0XK6<_JE6WV2[$-U)\.NO]YWOU[OLQGV_CH^J MN^*GMF0[];Z /##1WI#46\@)Y-3("GQ'!4]AGIALZJ A"-@1XJ\OTM1+9 B0 M!D&'E5(&, Z.HPVQE%N31W:AOL?NWV8>L*#I525%< M E7K&UL.@P]Q;#^Z#?5:S^F9CQ:*5UAK264.6&TPJ1.+TF'(Y;_HG\KWP+AWE@5:AD;/; MM5T_2(2..(ZT3')/3'_V;ZS0O']H!\V(4.3V:)S=\$2+8#T% MUGL,K2?6>LF(XY5\"";%:T]_ K^4.MV".8F#CC*FY\<%1+KX;4$3AYRF&@E; MW"X7'GERQ#GNQ&?M/FU/LKZ!'BP/U,LW(^]SBE0'A3[?/$T]V**N6?OWAVB\ M.6N@9)IZ3HQQ_J@G[+A/(>GT7:UM23H&]+W;M^\W>>SN[D-U>9%(&NUTLU*S \M] M666H2UX3E%("4$*AB;@ X0DU939Q8Y1-RA(U05.Z0W;D@X$^UOB?3*[9?N<# M1*2-5JSFF&)D#+>X#(:1A%'>; 3T([?-HCZOEXLSY;8?/Q:L5< *1QWB.HKD M%&&LDJ;(I3KD>!XB84N'^LT[@W6L$?M@G9R>CF8]EBE6$#! M&.*$L6A$ZZ< M6"'$9D1G20/5'(S$1F9__2L"@LP0YX#!S&/FD'55Z1B#*),IP6ROBF5^OUDO#S6UBZJ>WXOOMG]D=Y]J;Y:?;A2D$YI@Q#G06D@!A2@C MHZ3!%#:K13$#3K71>]X3R$-1R>1W7_<1\R,(9WETHD7 T$I,*44>>:$ $=)6 MPQ!#T"P^Y_4XE/HD43<(#\6@O[,OR^M5@PGHYP<#X,K*:'9*Q*UW0 D'W7$\ MB&9;E-?C&^J3+TG #D63YA/,4]IKZ"(P12BFB"E MMCX9U!W*Y]ET(KCJV>KX?I7OXL\G&=*@53!*$:7B]$@EM( 1#$SE[2 6ZA0+ M>(*7SOI@2/[S?ZZT-N;=<3F-BKR_(13URP4$RD3-L)GC-#8:X6J MDP]B#' )?+K\7MFKY%,/,(]^"'2U7&=O=ME=J^/&8^/ &=::0$60UHPJ'M%C ME=0ZK3S:!'=:XYTVMD5\=)[]OLFWK3AV:!BT( H9Z#SG7D%,$6#5!H( Q6=6 MNK-+]3=E5ANW^T/%;,>>W[C]ZOLH,WUC;K+-[OE_QY^?U+&&OYU M]1&!2 2T\\YCRJPOKF4P4R)(%< I6\,)SH0],G4DC8P^4[ZMK4]6URQX&0>L M9L119K!B0@)?&;,TPI]R\^[R\ZO>4P>,,4M>CO)8\28C7XGJ-Y9$6B^,1I8! MK34'!GE2#>DB%_V()5Y.&X0IT:&/PA.1D0PX): KJJ(B*EU%/HFC5?F+&$*7 M,Z&QI[4EU+V/\P_9MVS]D&)F\!%=?KZ/2HH;X /Z_UKNOIC]=I??99L&X[KA M&X(D@A3W5K5G4"IA!-!E5*"'SL!&)M0H XTU?$9A$4&!$@1.VJ)6-XM:Q M0@%J-K.1WCDW\D%@'VK4V^5V<7N[*9+BQ.;O/E>_'CEB=+@YP5-'<9QV"660 M1NUS+\MYWD&LP(ASP@G5G(L8K6L6(( >&::\\2#*;8BGK)+6*C>S%!J=<^!I MM'AW4+?<'6XWNT>$BC\])5/\56&2W.RO=^\V?V:;;\OK4T&@IQX-2$*M#: * M8H81X00I54EB<%)EX0F2IANEYIUB.@ [BCP!90>W)X,W:Y\/<76#7$N/I=#< M:"ITF*_IYU&/[T7&".0PJ=)P 2B!A!\9M* M%J&@GATQ4O3Y?#_9&LG6<0?EAY93W_O8_UW\U2X[>";]D*(%-JMD443_#6-PVFLQ[![8CFOQKN;[)_[F4'4];!:L%0%HPI3CB MP .#7.D\=Q@K.3\_1[>D2,2S(RZ\VWTY%Z5TLD$0D! '@7!",4$0=@Q5*&"% MV,S*JW;.@/90#I8KY7YI/&M%_/1<)#)@V !A!09<6P.I1)4LR'LXCXFA'RLB M!.,BD,\(IKZ@34%?]CG])2<0X07NA MI<[R?M#LB 5FO_NT6/_;1)B7-9'.#5L&P+F TAI&C;+2>>;+7%#2%5%W*;&' M$YH3>F-$!YAVQ(LWZ^UNL5K='V(O/N5GC(=&C8N@(Z8H+@+_"81 :7=$B&CK M4@ZN)FA(=,Z.;F#MB" ?-_>9BB_AQ<]M@HU6$%!0<@8,I9)B**M=$3'&IVPW M)WBYIG,Z)*$YE&EYXO3VJD$T\KFF@0-%H#=.>HF45I@C4+D)"/?-DHB]GL6F MTW/PGC >BE5G'$GN^_5J?Q.'1I%Q-_[OYN/B>WO7Y$MO"THBB1C4D&@.)#(R M;N@J7*Q4,SE"[9XFEWGK.X!^*,?]9!*U#>>J)U9'LY03;P6)NF#1 "GCIFP1 M3S%B$L<^7/4. .0,%9'8%%( -*BN-EM "$S9VDQPQ'?.@4M<]9=!W:#4<6E, L @8IS2RWPNI)"(I1R56J"A.E&H7F'B/;)B[>+ MN^S=YY^Z6.ND/_E\X-A)!3RE"@@2QQ L%S-++04SX0EJ0K-NX>R]3[XXY?, M?%FN%Y'QN\WRTWYW[G#D9(,@!;'"2P"8UY( I611X>>^QY"+F43R=*2UO =( M![SG7135V1RT]&&Y_7>C]'\UK0+"7$H3Q8(6>:*V^;UT M=>D>WM%HU"BU7TVK8"04]C[YOL=0:^PHJN0LX)S'#-2IQL^QJ#6Z@[&HG("? M]?Q\WHGZE@%:#3R!0&N F&.">%E-O@BHN1@SG6K^*9LZ17C$Y4UGZ^LO=XO- MOR]?XWYJ&KBDAEE;W,HB3$.CM:"5Q"(","^GT5 +70K&X[&JZO3E2]Z3IL$1 M8AU1'HCX17,N+4>] M+(P=8SS:PEC6[%W<9G4%ONN:!4?CB)306T@<4"9^=;Z2E(HD-DUPLNI.\><6 MQ/88#^6Y++^X[6YYM]AE^L?O67Z[67S]LKQ6FVSQ"_DS'3.2(*R,=D55L&@$ ME4YL*X@B?&;^3(Z@H= C#8Q'"!$/C]):(F96=*YS#ESDS[P(ZC[]5G]&71T2 MYSZ,\<6JQJUY\OG H=**.,LU%C2:7E@>#SBD97AFM4"Z46_>/;"]DB6[?=K# M6B?GR>>#!(9KH11@%,4U3U-[M,\DQ'@FT5(=Z37O'M%F+-E6--EFU[_=YM_^ MZSK?QZGR1\$47OU0$(4_(DKYZ_#7GR^PXN&/04@!$(&$8F09)\0)6;EZI; B MY1KAU"B0KK0\$;X!]&W>UNC;O U%EIXX(6+)C?6"2T94=:*D>'SE//R3_>C[ M8OB&T+>JT[<*VE@%- 9(NR+COK6:'SL,6+.\/=,_IN])WY?"U^>J[_9%QKR3 M1Z!/'PE*&*D%C*RD&F.O%+/5S*1L7/#F<0S5K>(301Q@N/^N:X;[[SI2UD,, M%#3"20P9@ZBJQ6M5<2L3*FO2SW"_&+X^A[O:+A?O%]?+S\OKVC'_[+D0 M^R_K&\N5EE;K'=J<^U M&J]Y.GC'+*<0>LV=9T80S:NE2Q/G4QP'8JYJ[P[/UKH_9"5Y$.5#=ANQKR= M39,@#7%,::QDG+Z D B;:D'3TL$4%LA9LZ [4.?@TX:6Q_VMQU@Y6A2L%=[S M2F*(B4R@T81.#7HY5>X)XXF$Y QPI3?.N1!:))S&PABOBU.7XVBS26FN)G1" MV3U-.KC2>QGT0SG&'ZI_?=PLUMO%(:O?MA!FN:Y$NUHN/BU7R]TRV_XZCG+O MJ'.'@HJ$ PNBD5)5VW32*](H:W5/D3%?%NO;[,WZI>Y7JOK1 (F+WA.@C]LW MP"$2!@ ?]_8(5AEZ)%9L)NZMWECR-(2F1^P'C- ZW7>SWQ0XUT=JG6T><'&C M#4FJ@!<* VR\Q97D2,A!+Z1_C;O7_.;/W6*SZS?(M!]N/ _BZAK^21#O&/!U MG=^NE_^;W;2EX+,7!46% \J!N,E-4ZSZL$8OME]B];/EU]]+6L/W+ I4T;HFXE$5L MID5,QU6EE%1Q*5+23T[(Y3@,V0930S+A_GFI4?99Q@$$CH(PS#HLPLZ.T *0XOB;D[AR!=/TJ8A+K;T>&G[; $00% M411@3H2(-LA1?6-Z^8ACV"/]11QL!>X+B1Q-+8 MN+&DC*NJQJ^SE($1.(>@P@H!IBZJI]AQ/&SJ0< MP%#LZP/S$5PY+JY!F_5B=4S[]?1VV;8Q"Q/>&CR2#BD&(U#2*^ 5%,=Q*01, MN>T_P9UBW]P<3A.]FT]_QLU%$8A5U(:^/L3G+=>W[_/5\GHYHCGUO"L-+*C3 MC8(C"E'-O422 *&]E^:^$IZBV&,]8DW56OR;S K-7A 8E]II(3U!,IKMQAOD M*P2TF$LIQ"ZI\+1@31\XCSN\R]]L#P=9WXII:FP/;M?C/D[N3C$:9W,5]2$Q MT>+>A:^0=Q;/K):R XY[H(VA&!LLG)/R?F>N,"!4I&1$?%UCO+':+\O)? FZ M;N1OF7)AZ[#.,Y)![#,*)G-,$2QT'J ME$#F*+'4?&9IY+LCP*6)QR[#>2AF/;BJE*SDI>U0G?18'=T.MO3A#MDQ?=%=DIMHOZO%YC;;[LYF9#[]< #88^KBY!FG3R$T+E( M6WG'<,[A,JJFTA#%F,3"VP*V*&TI,08Z*:71!$,]>]D8=8SQ8,&3_]\VW M;+-;;N.O3+[=C7Y_N6OO-[4>:>XYB5MF#1S"CI3A3=XH;AJ=:_8DZ0/R+BIL MO:WS>3]_.%@)M<5(.4B40AI:C4 E&7!N9D=M7:CXZ1*1BNFX(_?W/+_Y9[E: MS6W$,DIEW*DZ+*@5/GZG1;E3A92R9HLE$*6-<*OQ,\B!WJ>RGD6B= -OGN55W2?8949 ('O?P<3H#'DO\2"8* M9A8LD*S91OGU+\.T5YYTEE]?D[AV 1 !PAI'T>)0XI5,7M&9)"#I2*^-\NM? MAF@SEO2:7Q\B3H"#RAE?5%%'14F!LL.<:SN3=:4CI3W/KW\9? /H^VR^=S9P&RE->3%Y>42$M_)(;Z&\2ED-)C0[ M=&TX=H5GZ^GB[;Y@Y+O/5X5"BF2#9I5O7TS35/=XB"16WD.E$!#4" "<@%5O M>?S+/&R!#K25=P[FT--#@UDAJ&AA8&51G"<%)E(9IRK;1FA'4A*;3G R2*=# M(H#CG@V^N?NZ6&Z*M;.@\OKV:ODMNSGD+9C= 3\F12X6RCB4).[P, -5< . MA/%6U]OZG9BYTC[.'Q1X 03T0N@J% <@HMVOJ:S-"7H3K4#/UX(+Z) M^EK?+J--""69EII6\BN-9F;L=>1UX(L?<)G\IX[X-6^NYIL1!C"6M=*$($(U".OOV%=USY[ "/U5'<_?1 MN9<$[Z45@%@!)55,,D.(K) PRO\ZWN#&E#CI4>H8ZSZ=!Q^*C'@U3J7CWP/@ M''CFJ!+".TNH0+8,] =:VN)ZDG*>&RHU MP917_5;2I^3IFA =6NKJJ:9;8=;K79E(ZKO]7:VV?WHF "P@L\5,Z(D7SB-D M2-5W(%%*9:8IZOM2C>7=X-;O_:COYW7^^)G@L>),"D<=UC2A!C8^0.FH(4()5. AI M9A8JW*/)T#_X$R#A0_^+BTAG+Y%?^*8 ()72>=PCP4><*8,@@0A(@1&%>G#K;( M@CBOM7(H*G6%]Z"342%WP\GHT:.!(.J%58PC 94PEKHR)VZ4"#HPL^S$@TY& M[6$>.H7*A^R^KLGVR_+K>0[5M J 6D%\4:(3Q MBD[=(3X4L][FZ^O\[FNVR]3M)CL$39\GUNE&T=KT5$OJN7=(0^FL8T0G.-53:M@.*58"H % -1YXA3FQQ6=@I33*O;K M$JL[Q%_'72GJC(:>:*B<@-!RJ&F9H@(X+Y,J4$[0BNK9S=45S*_C^I2G2BE< M+-7>%&EG.:$50DX)GA)6/Z'3@([TVNCZU&6(3N#ZE(9$*BD\T%IPZ"VEYMAA M(N2,,H1UH+3GUZ/!(HA\<(SQY@WC%#JY%%HI'U*UNR+S81OV>93_BI4GPCC M5.[/\:+DE:6,>TT-*E8Y4D4*>R[\3(Y&NE5]QZ!.P%]YU>!*79/F03BH.672 MZ[A_\E!&>[H**XI+H)I9+>AQW>1M41^?;W]ML\_[U=7R^1?(MOS#<_YG:!Q .*G(R[4^L=A1(+SDVL*XC''='O_EE']+\LOSXD+MVJ M]8W?KZ^+3RF*^1:I<8M'YS;F!2:&68NU!G'^Y=2;JOHIU@2X1@9[/Y+^L5SG MF^7N1UPNLJCRW;G[82\^'X0@3.#X/V>QE8 520M*^0Q :F8&8A>*SKN'M<_3 MKN/8K7&1_?1,T$!8S9&STB$#&0/*5?FMC79\9DG%$_67=X/B( RH]74]>2H@ MJ2TES#$E*9)4$P'@L?]6SNC25TN]O:3Y5MBU/NK\G_?NZFIW\UO]Z>;/3P5 MB<42\=@_#6V<]#"MYCE+\4"FW;!ZO50K>5?HM=:LVMSE^\WG:#3%1>CJRM1K M^.6G0]QM%F%FP' ''! >"U/-818JFS*")[0[[TS3G:"8-);-8KVX69A\\[7! MD'[V<)#2QR4+8"OB5T$)$*ZJ)&"])"FG,1,*9^ET9*>"F*1N_=O?Y]5\?"A8 MQ20PFNIH@%C,I!3'NL?Q"TGQ/T_(=="I>MN"EZ36W[/-W6+]X_>[3_]]7KW/ M'@[.4B$=A'%A42XR3E)WG&^81RD.QPG%S':JYE00D]1MLS^R[\OK_,_?;/;A MMZOXK_GM[P;S=UV[@"$7@I-H4QA!%-#XZ$; KL@[.H_XUDY)T"&>27Q0U__9 M+[?+ O6&*_G++8(W2$(" 4<:T_@#LZRJMNJX-RG+.9\I!SI!LK7VWV_R7?;] MWJ1XL[X^H_F7GPY2$^^I+RP0CZ@H_JU*;SJO1NF?[Q?G"D@>L%;@BRN MM"+ B2N,(BDXI56A>(>,D?,X"^R0#V<8UAW6X_I[JZ^S\>(J J1A"&"H.;%> M"BU*\(DBO!G1^Y%4+[;+[;O/3_K^X_[?CQ%R'3_WWS52-WM!4(80@Y21WD9C MJ*AP0'V% +?TU_'S-J9"/@#.@^4ON8_M_I!]S3=M2-:H?< $*BVAU%0B;#G3 M<;]5RJ[9X]+QLS!6>N!8'S /1;&_MMF[SVZ[6]XM=K5A9S\_&(3!W NMXJ(K MHQW//$2DDD8R..CMFE=)FB0\!XM SC=9M#C*.+$?'S>+]79Q"!XK LD./Y9) M,II/2JW?&22 7#I>[!(C*M@# F6%D4O+?STA5TJ/G!L*^L%2ZBRV7V+'BR_N M/_OEM\6J2*K1G(J-VD>T!9:0BAF*-VH.NP,A!H83QRM9+<,I*RF M$W(<]4BQ/F >BF+'://F$]>I)D%;H &S3!D+(#,&^LIC1@P0/"7#SH2\3ST2 MJ2-DA^+.^^*F]F;WX_VJ.!%:WQ3SZR&'8G,N-7U%\)8#+! PC'H"L$8<5'MD MXVU2L<$)^;AZY%9/2 _%M:I*7NSYT[MNU9_.+H>-WQ$\T89#9Y&A#A7I'+'A M%09:)%4SN-C3]BK9UA?4$Z#;TY]3:/?RNP)VUB)(M$<,&$40?90,VYCE]NO^7:Q>E9Q\P+3K<7K @"2(>\!,\)1+007YFA\ M: ]2PDO@K^$'& #VH0CY(8LFZC[S$3:3KP^P_&NY^U+EK6U.Q%%PT220& M#$NEX]Y<62+I<7B"I.K"\-=P%/0*^'#TVV;QL[X\2MA>'.[D=U_W42E5.O=+ M6-CB?<'XB(#SEFGGG5$6XBHO&;$8\I0(&_AK.""&P'TH3JJ;;W%CM=Q&?$R^ MO60Y/M,R2&F@X=B;:)=8H2D0I!J#UG"55'/SUW Z=(OP8*[W:*'>+#8W<<]^ MLX_3]&*SB9OV'V=W&K7M H:2<"08X9("@KTB5311E%6ES5J_AB^A2WR'.^"] MCLO[Q\7W2PYX7VX2-.#6*@"]8901Z;1QJ)(0\J0B-/#7#I&CL,'RB1/)_PUW <]03T4V=QB MLXYP;-]' _#+15;\F9;!8%,<,DH+O0*" RF(*.5U<2>=M/+]&MZ#;A$>BE%Z M'PV_;+N- ^/32LJ5\= 9P6@5)^4<3BMR_&OX!3H# M=[ @M,5R4R1BR_[(%MO])GOPF%T0=-;T'8$3)[D@GM'" A!%,AE084 13/%R MHE_CX+\OK(?BV]OLGT>H;/)U_/;ZOE[3I;2[]%7! %O6#=,N5 MJ%':OP^+]6U6D_3Q^/<0^P=UG+:*M B*VN+82QS[S.#,V-&]*O-T4'LG0FVY MFT=/!*(L)A 96$1+"$T1+KJ-T0PR4\Q'3*TU-533;?"K$]=_[%<+^_V=[7: M_NF9P#GEF'D(%/:QWRI:T*SJ.]=R)G? 6VLL[P:W7G6^^'Y>YX^?"=00$M<[ M"@'"S,:M$V!EDCL$M$^Z)3"A^(M.=)Z V^BAV_K'Q]B1$R; !:V+7/7"$40Q M)=0@;)'"K));\*1^/ M0PP+.I/EJ!R'8%\I!.[R(*[0C"61Z=:!$4Q] I@@VV MT>8#%AC+CO))F)*2;UJ, ']_&#P16H[8A6DF%$F M-;?R* U127GV)QA6VB=?DH =+."A\03SE/;8 ,V-C#*!B X@!&GU0'N4LCI- M,"ZT3Z*D(7N>*2>R@#Z;S]ZO\EW\N3XE:'VK(+&FA LOG>.4$((5$%7?D:G]R><#AQ(IHQT 5#)GN *\S+ 2,:,N MY>;^!!>>7D_SNP*Y5^*<*MM]BC@GRWPCA@@E6E.)!::2",*.,AF45.I\0MND MCO2:=X]H,Y9L*YILL^O?;O-O_W7P=6Y^%$SAU0\%4?@CHI2_#G_]^0(K'OX8 MM')(10R<1-1QX8QBI M+&GLL4O)TSJA'6>WJN\8U-$=-E<-RA*<;QRH+:IB8TL8HT#2:"+1JC VQG$X MS(-*XWL&VR(^.L_^VF:?]ZNKY>>Z.,8&K8,C#A@FA./8"X>]/I9T0=@8F73O M9WI,ZY((33G6&NS12?8VJXL.KFL6!(PFNB: 8F(QT) ""I)!:6-XH.G;P&/ M2:O+41X]-/[;L=3KHA M?RG%XKR]S&]BAS>[7HG6*RN:I?=H!_^ !LX+G7U8@]YLM_NL;K)K]H+ HO(4 ME=1I$ T\[JC&II+>*3"S>,XA:=>+ L:EW_O%C\.EQXMI5S4,3#N',2/"8V^, MDIB#2EKI"4JY"=W\L%'>TVV=W2YVVK'^HF_QJGA%.7O>>V\?,* M2D818+&[UT<+HNBSU?98IM]6-Y^V;W[_-?V/K=SC;"U M[0)%%K,B9YLFV.FBX#NEE;P4ZI35YV)+NT]75Y>JS_L#>*CEY><^7RT7GY:K MY:XN6=")%H$26ASG:XN1T:A(:N]T*1^5'*?X."9H+?=.G[; CKU8W">Y5>N; M1WENY[8V6(NTI\AA+:F'@%J!>*D13QM6\.Q'TI?Q=U&#ZVV=:ZFV77#, ^ 9 MQ59ZI"BCVE>,]L2PE%C)UW70UUCQ)W(_=P'ON /\:>W5N0UM9+64MLC&AIF3 MW#-)RWS;F'EK&IUI]R/IVWT10/'N\W&9*%51=^)PLDU 6G))K(#%36T4#1.K M7"6GT6YFR4RZ4/C3O%<=03ON<#[$8$1]7%C7.AIL2JKOU9@UZ6QZ^;%P1NH MB./""0&!91(C[2H4XG\AT&",)(GSIHR3 M*#>BC/(E1;7/E$RQKVO_=RGK>L-XL"/JXXBI:I UH51-JZ!EM( A%L85J62$ MH@Y7Y:])G(93+EA,\')6#USJ#MSA2>27Z^4N.Y0)>UJX[NP*FO"V (U$"EA- M$),""ZXYK*J/Q?^@E!BW"0;I]DJZOD ?GHQ/'#C'4[D63&SVJD CQAQ@HYPT MV %J':KRRA/&2,I!_ 2O-/=*PUX0[W_#MHN=>O?UD"A^M)V976ZO5WF13OS= MY^)V>+;>'L3XD*V*P(!#9:E#681/BVUV4_G0&^S>TEX<$//0.RKCLF6-41B; MLHZ',)BJ,<]G&@NF'PO69 I)?'-@B!]6>8,4)IY8(X0H,2.W]\[]H5VD%.&FU7^C9D M'KCW6$!5K(RW]Q$<^LO7$SPB>>2,-81A3X@6&EB-?X[W'3R?T?6GYP)!LHC @@9;#KTV7'I3R:*0F%E"S1$X M\+1*:0+Z@^T"6V/S(-WZICC.>[NX.Y_WM8^/"T(+(J'43L;IP@D9874ELCY. M'RF7V"?(ZY:L>CI#CJ^(P?+QW7U=Y3^R[)&Y=SXSWZDV047[&#L/E>+6(J64 MK7D5(F,[>>PNZJ04:&])<'&?=@#"@L*(#&/; X.KK'66F0>3O+ZGGY[V]/#;K5H=R)+=?,QUMLX^+W?%#' 0 MZ]WZ_I%W^]VVN#^P7-_&">+^+M3'V*?MEWQU\S[;%/'X)Z,')M&[@(UGCC$( MM-)<6.&XA>5I!A!N=K62!B1O_MJ5/>@*TP8<]_WKAQ=\22B)FE@1^;_B.IK7^GQ?[3-OO/O@BM__8X,GIP1\73CC1P M09QJ$D!<5ZFT$#.+"#)<,UQ:U$ SJ!JEP!A&RD;A$*?:! P]=$K2N%NE5BA MH3C*R:F=V263='4_'=@= 3OX()V,=['+0]6.]$B. HIL!$G@I#04BH"<"4?9,V6L5?+F0M5G/> (40*#J*_!D9OD'.]1=WC6V MK7GP/^_=U=7NYHS^?WXJ2 :)*K:82CA&D-*\K"D=^X8)G%FFB9[TGH3I8(=9 M3Y;1\U$])UH$;8S$&GG+%(?>,21Y9:MQ+E3* =,$.=.I^=$-I"-2YGSDS:DV M@0/BD*(J"AK_+0JA'X<%1]C/+2PL5=/GF=,*UY&X142Z(J":V7 M*;4LI^@#Z7&):HOIB%ODTI>^N,W>??X[+^[#/20=N+?VZIQQ[5X8-+2",!*- M/LPLHU0K!"MT-,,SNQB43I+SN^GN41\L/41U(RDO.UI)EVU_W^3;VKS&9YH& M334!VC%/C>/$,AFWE:7$@E+8*)?FJS6^TWG6,;ZM-^N'"]R/R/XVWV7;V+D3 M+H2S;0(B"AJB,.&*H;@!!8208[^%FEF:A\YXT36P0R][)K_[M%P?-&;R]79Y MD]W'U7S<+-;;>Y7!!HM=D]<$2XLR.H@J"(1T_%" L$)"I*4NG&!2A]Z6N!ZP M;N!H+O]0_%.$8_W?__/_ 5!+ 0(4 Q0 ( .-$<%!K>-G3Z , '$X 7 M " 0 !A,C Q.3$P+6ME>&AI8FET,C$Q+FAT;5!+ 0(4 M Q0 ( .-$<%"!H U5*0@ (PN 7 " 1T$ !A,C Q M.3$P+6ME>&AI8FET,S$Q+FAT;5!+ 0(4 Q0 ( .-$<%#<4T@O4 @ "(Q M 7 " 7L, !A,C Q.3$P+6ME>&AI8FET,S$R+FAT;5!+ M 0(4 Q0 ( .-$<%"Q'U($T00 "L4 7 " 0 5 !A M,C Q.3$P+6ME>&AI8FET,S(Q+FAT;5!+ 0(4 Q0 ( .-$<%#6I4'YU@0 M #43 7 " 08: !A,C Q.3$P+6ME>&AI8FET,S(R+FAT M;5!+ 0(4 Q0 ( .-$<%"Z\NYYDQ( (A6 6 " 1$? M !A,C Q.3$P+6ME>&AI8FET-#$N:'1M4$L! A0#% @ XT1P4,Z0HX_& M'0( 0P 8 !$ ( !V#$ &$R,#$Y,3 M:WAP96PN:'1M4$L! M A0#% @ XT1P4&3:M43*%0 6O\ !$ ( !S4\" 'AP M96PM,C Q.3$R,S$N>'-D4$L! A0#% @ XT1P4"G%K@".*0 HL8! !4 M ( !QF4" 'AP96PM,C Q.3$R,S%?8V%L+GAM;%!+ 0(4 Q0 M ( .-$<% R$;I,[T( ,(B P 5 " 8>/ @!X<&5L+3(P M,3DQ,C,Q7V1E9BYX;6Q02P$"% ,4 " #C1'!0WVG!+A;* #YS H %0 M @ &IT@( >'!E;"TR,#$Y,3(S,5]L86(N>&UL4$L! A0#% M @ XT1P4#]!D[ZFA0 ,I & !4 ( !\IP# 'AP96PM,C Q C.3$R,S%?<')E+GAM;%!+!08 # , "<# #+(@0 ! end XML 103 R35.htm IDEA: XBRL DOCUMENT v3.20.1
LEASES (Tables)
12 Months Ended
Dec. 31, 2019
Leases [Abstract]  
Schedule of Balance Sheet Information Related To Leases
Balance sheet information related to operating leases is as follows:
 
December 31, 2019
Operating lease right-of-use assets
$
5,079,110

 
 
Current portion of operating lease liabilities
1,126,701

Noncurrent portion of operating lease liabilities
4,009,949

Total operating lease liabilities
$
5,136,650


Schedule of Weighted Average Remaining Lease Term and Discount Rate Information
Weighted-average information associated with the measurement of our remaining operating lease obligations is as follows:
 
December 31, 2019
Weighted-average remaining lease term (in years)
5.6

Weighted-average discount rate
5.84
%

Schedule of Maturities of Operating Lease Liabilities
The following table summarizes the maturity of our operating lease liabilities as of December 31, 2019:
2020
$
1,060,213

2021
1,084,622

2022
1,011,538

2023
908,901

2024
580,481

Thereafter
1,077,086

     Total operating lease payments
5,722,841

Less: interest
(586,191
)
Total operating lease liabilities
$
5,136,650


Schedule of Future Minimum Lease Payments Under Non-cancelable Operating Leases Future minimum lease payments, under non-cancelable operating leases as of December 31, 2018 were as follows:
2019
$
869,492

2020
736,169

2021
667,551

2022
601,593

2023
528,427

Thereafter
1,372,388

 
$
4,775,620


XML 104 R31.htm IDEA: XBRL DOCUMENT v3.20.1
INVENTORIES (Tables)
12 Months Ended
Dec. 31, 2019
Inventory Disclosure [Abstract]  
Schedule of Inventory
The components of inventory are summarized as follows:
 
December 31, 2019
 
December 31, 2018
Film and film based products
$
13,538,610

 
$
9,399,067

Other products
1,226,708

 
1,264,862

Packaging and supplies
496,661

 
320,738

Inventory reserve
(120,826
)
 
(185,056
)
 
$
15,141,153

 
$
10,799,611